easyCoexistence
IngiaAnza kipindi cha majaribio bila malipo
Meta Tech Provider

Tuma na pokea WhatsApp kutoka Python

Kupokea ni route katika web framework yako inayojibu GET ya uthibitishaji ya Meta na kupokea POST. Kutuma ni ombi la HTTPS kwa Cloud API lenye phone number id na token ya nambari. Hakuna SDK yetu, wala chochote cha kusakinisha.

2 handlers

GET ya uthibitishaji wa Meta na POST ya matukio. Huo ndio upande wa kupokea.

24 hours

Dirisha baada ya ujumbe wa mteja ambapo maandishi huru yanaweza kutumwa.

131047

Hitilafu inayorejeshwa unapotuma maandishi huru nje ya dirisha hilo.

Unapokeaje jumbe katika Python?

Tumia handlers mbili kwenye route moja, katika framework yoyote unayotumia tayari.

GET handler hujibu uthibitishaji wa Meta. Husoma hub.mode, hub.verify_token na hub.challenge kutoka kwenye query string, hukagua token dhidi ya yako, kisha hurejesha challenge kama raw body. Kurejesha JSON hapa ndilo kosa linalotokea mara nyingi, na hushindwa bila taarifa.

POST handler hupokea matukio. Rejesha 200 haraka na ufanye kazi baadaye, kwa sababu Meta huchukulia jibu la polepole kuwa hitilafu na itajaribu tena. Hii inaweza kufanya ushughulikie ujumbe huo mara mbili. Uweke kwenye foleni au uupe background task badala ya kuuchakata moja kwa moja.

Jumbe hufika na kitambulisho cha ujumbe wamid. Ni vyema kuzuia marudio kwa kutumia kitambulisho hicho tangu mwanzo, kwa kuwa majaribio ya kutuma tena ni ya kawaida.

Unatumaje?

Tuma POST moja kwenye messages endpoint ya Cloud API kwa phone number id, ukiwa na bearer token.

Thamani zote mbili hutoka kwenye muunganisho: dashboard huzionyesha, na get_api_credentials huzirejesha ikiwa ungependa assistant azipate. Hakuna sehemu ya ombi hili iliyo maalum kwetu, kwa hiyo HTTP library yoyote itafanya kazi na ombi litaonekana sawa kabisa na lililo kwenye nyaraka za Meta.

Kinachobadilika kulingana na muda ni body. Ndani ya saa 24 tangu ujumbe wa mwisho wa mteja, tuma text object. Baada ya hapo, tuma template object yenye jina la template iliyoidhinishwa na lugha yake. Mteja anayejua muundo wa kwanza pekee hufanya kazi vizuri kwenye majaribio, lakini hushindwa kwenye ujumbe wa kwanza wa usiku na kurejesha error 131047.

Handler ya uzalishaji inahitaji nini zaidi ya hayo?

Mambo matatu ambayo ni rahisi kuruka na ghali kuyaongeza baadaye.

Zuia marudio kwa kutumia kitambulisho cha ujumbe, kwa sababu Meta hujaribu tena. Thibitisha saini ya ombi ikiwa huduma yako iko wazi hadharani, kwa kuwa mtu yeyote anayejua URL yako anaweza kulitumia kutuma ombi. Pia angalia muda tangu mwasiliani aandike mara ya mwisho, ili njia ya kutuma ichague text au template bila mtu kuamua.

Hakuna kati ya haya inayohitaji framework au library. Ni seti, ukaguzi na ulinganisho, na kuyaweka kabla ya mteja wa kwanza ndiko kunakotofautisha muunganisho unaoendesha kwa utulivu na ule unaokulazimisha kushughulikia arifa kila mara.

Makosa ya kawaida

  • Kurejesha JSON kutoka kwenye verification GET badala ya thamani ya raw challenge.
  • Kuchakata moja kwa moja kabla ya kurejesha 200. Meta hujaribu tena majibu ya polepole na unashughulikia ujumbe huo mara mbili.
  • Kutuma maandishi huru bila kukagua dirisha. Hurejesha 131047 na kuonekana kana kwamba hakuna kilichotokea.
Kufanya hili ukitumia EasyCoexistence

Unganisha nambari kwenye easycoexistence.com, weka webhook destination kwenye route yako, kisha soma phone number id na token kwenye dashboard. Kuanzia US$ 9 kwa nambari kwa mwezi, hadi US$ 2 kwa idadi kubwa, huku siku 7 za kwanza zikiwa bila malipo.

Maswali yanayoulizwa mara kwa mara

Je, kuna Python SDK?

Si kutoka kwetu, na huhitaji moja. API ni ya Meta, imeandikwa na Meta, na inaweza kufikiwa kwa HTTP library yoyote.

Nitumia framework gani?

Yoyote. Kinachohitajika ni route inayojibu GET na kupokea POST, jambo ambalo kila Python web framework hufanya.

Ninawezaje kuepuka kushughulikia ujumbe mara mbili?

Zuia marudio kwa kutumia wamid message id kwenye payload. Meta hujaribu tena kimakusudi, kwa hiyo hili linatarajiwa badala ya kuwa hali ya nadra.

Je, timu bado inaweza kutumia simu?

Ndiyo. Coexistence huifanya programu ya WhatsApp Business iendelee kufanya kazi kwenye nambari hiyo hiyo, na handler yako huona wanachotuma kama echo event.

Endelea kusoma

Uko tayari kuanza?

Sanidi WhatsApp Coexistence kwa dakika chache, si miezi. Programu inaendelea kufanya kazi kwenye simu.

Anza kipindi cha majaribio bila malipo

Imethibitishwa kwenye

Tuma WhatsApp kutoka Python