कंटेंट पर जाएँ
गाइड

Wixzel Voice API से असली फ़ोन कॉल पर Gemini Live

चार HTTP रिक्वेस्ट आपको खाली अकाउंट से उस फ़ोन तक ले जाती हैं जिस पर घंटी बज रही है और लाइन पर Google का Gemini Live मॉडल है: अपना SIP ट्रंक कनेक्ट करें, एक नंबर रजिस्टर करें, एक realtime एजेंट बनाएँ, कॉल करें। पाँचवीं रिक्वेस्ट रिकॉर्ड वापस पढ़ती है, ट्रांसक्रिप्ट और कॉल के खर्च के साथ। कैरियर पहले से सेट हो तो इसमें लगभग 10 मिनट लगते हैं। Gemini Live इंजन $0.0491 प्रति कनेक्टेड मिनट है, प्राइस बुक में सबसे कम, इसलिए तीन मिनट की कॉल लगभग $0.15 की होती है, जो प्रीपेड बैलेंस से प्रति सेकंड बिल होती है, साथ में आपके कैरियर का रेट।

लेखक · प्रकाशित · अपडेट

समय
कैरियर सेट हो तो लगभग 10 मिनट
इंजन
gemini-live
इंजन टाइम
$0.0491 प्रति कनेक्टेड मिनट

शुरू करने से पहले आपको क्या चाहिए?

  • क्रेडिट वाली Wixzel Voice API की। न्यूनतम रिचार्ज $5 है।
  • आपके कैरियर पर एक SIP ट्रंक और उस पर एक नंबर, जिसे कैरियर आपको कॉलर ID के रूप में दिखाने देता हो।
  • curl, jq और uuidgen।

इसे Wixzel Voice पर स्टेप-बाय-स्टेप कैसे बनाएँ?

  1. 01अपना SIP ट्रंक कनेक्ट करें

    अपनी की और API base एक बार सेट करें, फिर ट्रंक बनाएँ। tee पूरा रिस्पॉन्स रख लेता है, क्योंकि id के अलावा आपको इससे दो वैल्यू और चाहिए:

    shell
    export WIXZEL_API_KEY="wv_live_..."
    API=https://api.voice.wixzel.com/v1
    
    TRUNK_ID=$(curl -s $API/sip-trunks \
      -H "Authorization: Bearer $WIXZEL_API_KEY" \
      -H "Content-Type: application/json" \
      -d '{
        "name": "My carrier",
        "host": "sip.your-carrier.example",
        "username": "your-sip-username",
        "password": "your-sip-password"
      }' | tee trunk.json | jq -r .id)
    
    jq -r '.platform_ip, .origination_uri' trunk.json

    अगर आपका कैरियर IP से ऑथराइज़ करता है तो username और password छोड़ दें। दोनों ही स्थितियों में, कैरियर पर platform_ip को allowlist करें ताकि वह प्लेटफ़ॉर्म से आने वाली कॉल स्वीकार करे; origination_uri वह जगह है जहाँ कैरियर को इनकमिंग कॉल भेजनी चाहिए, जिसकी इस गाइड में ज़रूरत नहीं है।

  2. 02वह नंबर रजिस्टर करें जिससे आप कॉल करेंगे

    अपना नंबर इस्तेमाल करें, E.164 फ़ॉर्म में:

    shell
    NUMBER_ID=$(jq -n --arg trunk "$TRUNK_ID" \
      '{phone_number: "+14155550100", sip_trunk_id: $trunk}' |
      curl -s $API/phone-numbers \
        -H "Authorization: Bearer $WIXZEL_API_KEY" \
        -H "Content-Type: application/json" \
        -d @- | jq -r .id)
  3. 03Gemini Live एजेंट बनाएँ

    आवाज़ तीन स्टेज के बजाय एक realtime मॉडल है:

    shell
    AGENT_ID=$(jq -n --arg number "$NUMBER_ID" '{
        name: "Gemini Live",
        system_prompt: "You are a friendly assistant on a phone call. Keep answers to one or two sentences.",
        opening_message: "Hi, this is an automated assistant. Do you have a minute?",
        outbound_phone_number_id: $number,
        voice: { realtime: { model: "google/gemini-live", voice: "Charon" } }
      }' |
      curl -s $API/agents \
        -H "Authorization: Bearer $WIXZEL_API_KEY" \
        -H "Content-Type: application/json" \
        -d @- | jq -r .id)

    voice.realtime पूरा टर्न, यानी सुनना, सोचना और बोलना, Gemini Live को सौंप देता है, इसलिए इसमें stt, llm या tts ब्लॉक नहीं होता; जो voice दोनों ढाँचे बताए, उसे API रिजेक्ट कर देता है। Charon Gemini की पहले से बनी आवाज़ों में से एक है, और GET /v1/engines/gemini_live/voices Google के एक-शब्द वाले विवरण के साथ सबकी लिस्ट देता है।

    outbound_phone_number_id एजेंट को कॉलर ID देता है, जिसकी वजह से अगली रिक्वेस्ट में from_number_id छोड़ा जा सकता है।

  4. 04कॉल करें

    to नंबर की जगह वह फ़ोन नंबर लिखें जिस पर आप कॉल करना चाहते हैं:

    shell
    CALL_ID=$(jq -n --arg agent "$AGENT_ID" '{to: "+14155551234", agent_id: $agent}' |
      curl -s $API/calls \
        -H "Authorization: Bearer $WIXZEL_API_KEY" \
        -H "Idempotency-Key: $(uuidgen)" \
        -H "Content-Type: application/json" \
        -d @- | jq -r .id)

    API तुरंत status: "queued" के साथ 201 लौटाता है, और कुछ पल बाद फ़ोन बजता है। यहाँ Idempotency-Key ज़रूरी है: नेटवर्क टाइमआउट से पता नहीं चलता कि कॉल हुई या नहीं, और उसी की के साथ दोबारा कोशिश करने पर दो बार डायल होने के बजाय पहली कॉल लौटती है, इसलिए अगर आप रीट्राई स्क्रिप्ट करते हैं तो की संभालकर रखें। जो कॉल अपने पहले 15 सेकंड का खर्च नहीं उठा सकती, वह कुछ भी डायल होने से पहले 402 के साथ रिजेक्ट हो जाती है।

  5. 05देखें कि क्या हुआ

    पाँचवीं रिक्वेस्ट कॉल वापस पढ़ती है:

    shell
    curl -s $API/calls/$CALL_ID \
      -H "Authorization: Bearer $WIXZEL_API_KEY" | jq
    Example response, shortened
    {
      "id": "6a96a3ead6e886d42462dd3e",
      "object": "call",
      "session_id": "sip-5b0c7c0e-9d1f-4c52-8a9e-2f0d3a4b6c7d",
      "status": "completed",
      "direction": "outbound",
      "channel": "phone",
      "engine": "gemini_live",
      "to": "+14155551234",
      "duration_seconds": 94,
      "cost_micros": 76923,
      "failure_code": null,
      "failure_reason": null,
      "transcript": [
        { "role": "assistant", "content": "Hi, this is an automated assistant. Do you have a minute?" },
        { "role": "user", "content": "Sure, go ahead." }
      ]
    }

    status queued से ringing और in-progress होते हुए completed तक जाता है, या failed, busy या no-answer पर खत्म होता है। cost_micros कॉल सेटल होने पर लिखा जाता है (1,000,000 यानी $1.00) और जो कॉल कभी कनेक्ट नहीं हुई उस पर null रहता है, क्योंकि ऐसी कॉल का चार्ज नहीं लगता। कॉल फ़ेल होने पर failure_code कैरियर का Q.850 cause होता है (17 बिज़ी, 19 जवाब नहीं मिला, 21 कैरियर ने रिजेक्ट किया) और failure_reason बताता है कि इसके लिए क्या करना है। GET /v1/usage/events?session_id=… हर चार्ज का ब्योरा देता है।

Wixzel Voice पर इस बिल्ड की लागत कितनी है?

$0.0491 प्रति कनेक्टेड मिनट पर gemini-live इंजन पर 3 मिनट की कॉल का इंजन टाइम: हर कॉल पर लगभग $0.15। टेलीफ़ोनी आपका अपना ट्रंक है, आपके कैरियर की दर पर, और यह इसमें शामिल नहीं है।

इस गाइड के बिल्ड का मासिक इंजन खर्च
हर महीने की कॉलकनेक्टेड मिनटहर महीने का इंजन खर्च
300900$44.19
1,5004,500$221
6,00018,000$884

प्रति मिनट का आँकड़ा सामान्य बोलने की रफ़्तार पर है, ऑर्केस्ट्रेशन फ़ीस समेत। Gemini Live कॉल लाइव रहते हुए ऑडियो टोकन में मापा जाता है, इसलिए कम बातचीत वाली कॉल अनुमान से कम खर्च करती है और ज़्यादा बातचीत वाली ज़्यादा। ऊपर के उदाहरण रिस्पॉन्स में 94 सेकंड की कॉल की कीमत प्रति मिनट रेट पर निकाली गई है। लाइन का बिल आपका कैरियर अलग से देता है, बिना मार्कअप के।

प्रीपेड, बिना सब्सक्रिप्शन और बिना फ़्री टियर: $5 से क्रेडिट जोड़ें और इस्तेमाल उसी से कटता है। अपने इस्तेमाल का अनुमान लगाएँ।

इस बिल्ड पर Wixzel Voice की कौन-सी सीमाएँ लागू होती हैं?

  • फ़ोन कॉल के लिए आपका अपना SIP ट्रंक चाहिए। Wixzel Voice नंबर न बेचता है, न पोर्ट करता है, न रखता है। कंसोल से कनेक्ट किए गए Twilio, Telnyx, Plivo, Vobiz या Vonage अकाउंट पर यह आपके लिए नंबर खरीद सकता है, जिसका बिल आपका कैरियर देता है।
  • POST /v1/agents/{id}/test-call से होने वाली टेस्ट कॉल अपना एक वाक्य classic वॉइस पाइपलाइन से बोलती है, क्योंकि Gemini Live में एक वाक्य वाला मोड नहीं है। Gemini की अपनी आवाज़ सुनने के लिए सामान्य कॉल करें।
  • डिफ़ॉल्ट रूप से एक अकाउंट पर एक साथ पाँच कॉल लाइव हो सकती हैं, माँगने पर यह सीमा बढ़ाई जाती है।
  • कोई latency आँकड़ा प्रकाशित नहीं है: realtime इंजन उतनी ही तेज़ी से जवाब देता है जितना मॉडल खुद देता है। Wixzel Voice के व्यवहार में बदलाव तारीख वाले Wixzel-Version हेडर के पीछे आते हैं।

अक्सर पूछे जाने वाले सवाल

क्या Gemini Live फ़ोन कॉल कर सकता है?

Gemini Live एक मॉडल है, फ़ोन सेवा नहीं। Wixzel Voice दोनों को जोड़ता है: एक एजेंट बनाएँ जिसकी voice {"realtime": {"model": "google/gemini-live"}} हो, और POST /v1/calls आपके अपने SIP ट्रंक पर असली नंबर डायल करता है, लाइन पर Gemini Live के साथ।

क्या मुझे Google Cloud या Gemini API की चाहिए?

नहीं। होस्टेड प्लेटफ़ॉर्म पर प्रोवाइडर अकाउंट Wixzel Voice के हैं। एक wv_live_ API की और एक प्रीपेड बैलेंस से Gemini Live और बाकी हर इंजन चलता है।

कॉल पर Gemini Live कौन-सी आवाज़ें इस्तेमाल कर सकता है?

इसकी पहले से बनी आवाज़ें, जैसे Charon, Kore और Puck। GET /v1/engines/gemini_live/voices सबकी लिस्ट देता है। किसी दूसरे इंजन की लिस्ट की आवाज़ एजेंट बनाते समय रिजेक्ट हो जाती है।

Gemini Live फ़ोन कॉल का खर्च कितना है?

सामान्य बोलने की रफ़्तार पर $0.0491 प्रति कनेक्टेड मिनट, तीन मिनट के लिए लगभग $0.15, प्रीपेड क्रेडिट से प्रति सेकंड बिल, साथ में आपके कैरियर का रेट। जो कॉल कभी कनेक्ट नहीं होती, उसका कोई खर्च नहीं।

क्या Gemini Live एजेंट इनकमिंग कॉल का भी जवाब दे सकता है?

हाँ। PATCH /v1/phone-numbers/{id} से फ़ोन नंबर का inbound_agent_id उस एजेंट पर सेट करें, और अपने कैरियर का इनकमिंग रूट ट्रंक के origination_uri पर सेट करें।

और कहाँ पढ़ें

  • क्विकस्टार्टडॉक्स

    यही चार रिक्वेस्ट, TypeScript और Dart SDK में भी।

  • वॉइस इंजनडॉक्स

    realtime voice का ढाँचा, आवाज़ों की लिस्ट और भाषाएँ।

  • SIP ट्रंकडॉक्स

    allowlist करना, इनकमिंग रूटिंग और हर failure code का मतलब।

  • Idempotencyडॉक्स

    POST /v1/calls को की क्यों चाहिए और replay कैसे काम करते हैं।

एजेंटिक टेलीफ़ोनी के लिए API

Wixzel Voice के बारे में

Wixzel Voice एक वॉइस AI API है, जिससे ऐसे AI एजेंट बनते हैं जो आपके अपने SIP ट्रंक पर असली फ़ोन कॉल करते और उनका जवाब देते हैं, या आपके वेब और मोबाइल ऐप में लोगों से बात करते हैं। एक API की और एक प्रीपेड बैलेंस हर वॉइस इंजन को कवर करते हैं, और बिल असली इस्तेमाल के हर सेकंड के हिसाब से बनता है।

Wixzel Voice MCP सर्वर से Claude को असली फ़ोन लाइन दें

Claude Code या claude.ai में Claude आपके SIP ट्रंक से असली कॉल करता है और ट्रांसक्रिप्ट पढ़कर बताता है, और कुछ भी डायल होने से पहले आपसे पुष्टि लेता है।

Wixzel Voice के साथ Node.js में Twilio AI रिसेप्शनिस्ट बनाएँ

आपके मौजूदा Twilio नंबर पर एक AI रिसेप्शनिस्ट जवाब देता है और API में अपॉइंटमेंट बुक करता है, Node.js में बना हुआ।

Wixzel Voice के sarvam इंजन पर हिंदी और मलयालम फ़ोन एजेंट

दो फ़ोन एजेंट, एक हिंदी और एक मलयालम बोलने वाला, Sarvam के भारतीय भाषा मॉडल पर, जो आपके SIP ट्रंक से कॉल का जवाब देते हैं या कॉल करते हैं।

Wixzel Voice के साथ WebSocket पर Flutter वॉइस एजेंट जोड़ें

एक Flutter ऐप जिसमें यूज़र WebSocket पर आपके वॉइस एजेंट से बात करते हैं, API की आपके सर्वर पर रहती है और कोई फ़ोन नंबर शामिल नहीं होता।

Wixzel Voice के साथ AI लीड-क्वालिफ़िकेशन कैंपेन चलाएँ

लीड की एक लिस्ट, जिसे आपका एजेंट आपके SIP ट्रंक पर, एक साथ चलने वाली कॉल की आपकी सीमा के हिसाब से बैच में कॉल करता है, और हर कॉल का स्टेटस और ट्रांसक्रिप्ट वापस पढ़ा जाता है।

Wixzel Voice से अपनी वेबसाइट पर बोलने वाला AI मैस्कट लगाएँ

आपकी वेबसाइट के कोने में एक बोलने वाला मैस्कट, जिसे विज़िटर ब्राउज़र से कॉल करते हैं, आपके डोमेन और आपकी रोज़ की सीमाओं तक सीमित, और हर कॉलर की लिस्ट के साथ।

Wixzel Voice के साथ Flutter ऐप में अपने एजेंट का मैस्कट दिखाएँ

एक Flutter स्क्रीन, जिसमें आपके एजेंट का मैस्कट realtime कॉल के दौरान एजेंट की आवाज़ के साथ मुँह हिलाता है, और आपकी API की आपके सर्वर पर रहती है।

अपना पहला वॉइस एजेंट बनाएँ