whatsapp-docs-mcp 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +22 -0
- package/README.md +181 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +65 -0
- package/dist/index.js.map +1 -0
- package/dist/prompts.d.ts +22 -0
- package/dist/prompts.d.ts.map +1 -0
- package/dist/prompts.js +305 -0
- package/dist/prompts.js.map +1 -0
- package/dist/resources.d.ts +24 -0
- package/dist/resources.d.ts.map +1 -0
- package/dist/resources.js +132 -0
- package/dist/resources.js.map +1 -0
- package/dist/tools.d.ts +6 -0
- package/dist/tools.d.ts.map +1 -0
- package/dist/tools.js +379 -0
- package/dist/tools.js.map +1 -0
- package/dist/utils/fileLoader.d.ts +19 -0
- package/dist/utils/fileLoader.d.ts.map +1 -0
- package/dist/utils/fileLoader.js +126 -0
- package/dist/utils/fileLoader.js.map +1 -0
- package/dist/utils/search.d.ts +27 -0
- package/dist/utils/search.d.ts.map +1 -0
- package/dist/utils/search.js +91 -0
- package/dist/utils/search.js.map +1 -0
- package/docs/QUICK_REFERENCE.md +223 -0
- package/docs/anuncios_com_clique_para_whatsapp/AGENTS.md +8 -0
- package/docs/anuncios_com_clique_para_whatsapp/welcome_message_sequences.md +449 -0
- package/docs/ativos_da_conta/AGENTS.md +9 -0
- package/docs/ativos_da_conta/outros_ativos/AGENTS.md +12 -0
- package/docs/ativos_da_conta/outros_ativos/business_profiles.md +137 -0
- package/docs/ativos_da_conta/outros_ativos/display_names.md +108 -0
- package/docs/ativos_da_conta/outros_ativos/official_business_accounts.md +123 -0
- package/docs/ativos_da_conta/outros_ativos/qr_codes.md +198 -0
- package/docs/ativos_da_conta/outros_ativos/whatsapp_business_accounts.md +99 -0
- package/docs/ativos_da_conta/telefones_comerciais/AGENTS.md +11 -0
- package/docs/ativos_da_conta/telefones_comerciais/conversational_components.md +347 -0
- package/docs/ativos_da_conta/telefones_comerciais/phone_numbers.md +486 -0
- package/docs/ativos_da_conta/telefones_comerciais/registration.md +171 -0
- package/docs/ativos_da_conta/telefones_comerciais/two_step_verification.md +66 -0
- package/docs/catalogos/AGENTS.md +12 -0
- package/docs/catalogos/receive_responses.md +28 -0
- package/docs/catalogos/sell_products_and_services.md +24 -0
- package/docs/catalogos/set_commerce_settings.md +163 -0
- package/docs/catalogos/share_products.md +401 -0
- package/docs/catalogos/upload_inventory.md +28 -0
- package/docs/comecar/AGENTS.md +8 -0
- package/docs/comecar/get_started.md +127 -0
- package/docs/dados_privacidade_e_politica/AGENTS.md +16 -0
- package/docs/dados_privacidade_e_politica/block_users.md +549 -0
- package/docs/dados_privacidade_e_politica/data_privacy_and_security.md +78 -0
- package/docs/dados_privacidade_e_politica/encryption.md +8 -0
- package/docs/dados_privacidade_e_politica/getting_opt_in.md +41 -0
- package/docs/dados_privacidade_e_politica/identity_change.md +34 -0
- package/docs/dados_privacidade_e_politica/local_storage.md +277 -0
- package/docs/dados_privacidade_e_politica/no_storage.md +132 -0
- package/docs/dados_privacidade_e_politica/policy_enforcement.md +85 -0
- package/docs/dados_privacidade_e_politica/policy_enforcement_violations.md +127 -0
- package/docs/grupos/AGENTS.md +15 -0
- package/docs/grupos/error_codes.md +170 -0
- package/docs/grupos/faq.md +30 -0
- package/docs/grupos/get_started.md +73 -0
- package/docs/grupos/groups.md +75 -0
- package/docs/grupos/groups_messaging.md +340 -0
- package/docs/grupos/pricing.md +322 -0
- package/docs/grupos/reference.md +1059 -0
- package/docs/grupos/webhooks.md +298 -0
- package/docs/index.md +318 -0
- package/docs/insights/AGENTS.md +8 -0
- package/docs/insights/analytics.md +944 -0
- package/docs/ligacoes/AGENTS.md +20 -0
- package/docs/ligacoes/app_review_guidelines.md +48 -0
- package/docs/ligacoes/business_initiated_calls.md +858 -0
- package/docs/ligacoes/call_button_messages_deep_links.md +454 -0
- package/docs/ligacoes/call_settings.md +643 -0
- package/docs/ligacoes/calling.md +130 -0
- package/docs/ligacoes/faq.md +468 -0
- package/docs/ligacoes/integration_patterns.md +121 -0
- package/docs/ligacoes/pricing.md +339 -0
- package/docs/ligacoes/reference.md +1923 -0
- package/docs/ligacoes/sip.md +1090 -0
- package/docs/ligacoes/troubleshooting.md +483 -0
- package/docs/ligacoes/user_call_permissions.md +672 -0
- package/docs/ligacoes/user_initiated_calls.md +1030 -0
- package/docs/mensagens/AGENTS.md +46 -0
- package/docs/mensagens/limites_de_mensagens/AGENTS.md +9 -0
- package/docs/mensagens/limites_de_mensagens/messaging_limits.md +91 -0
- package/docs/mensagens/limites_de_mensagens/upcoming_changes.md +8 -0
- package/docs/mensagens/recursos_adicionais/AGENTS.md +13 -0
- package/docs/mensagens/recursos_adicionais/contextual_replies.md +82 -0
- package/docs/mensagens/recursos_adicionais/link_previews.md +58 -0
- package/docs/mensagens/recursos_adicionais/mark_message_as_read.md +111 -0
- package/docs/mensagens/recursos_adicionais/media.md +419 -0
- package/docs/mensagens/recursos_adicionais/payload_encryption.md +8 -0
- package/docs/mensagens/recursos_adicionais/typing_indicators.md +117 -0
- package/docs/mensagens/tipos_de_mensagens/AGENTS.md +24 -0
- package/docs/mensagens/tipos_de_mensagens/address_messages.md +465 -0
- package/docs/mensagens/tipos_de_mensagens/audio_messages.md +211 -0
- package/docs/mensagens/tipos_de_mensagens/contacts_messages.md +482 -0
- package/docs/mensagens/tipos_de_mensagens/document_messages.md +232 -0
- package/docs/mensagens/tipos_de_mensagens/image_messages.md +176 -0
- package/docs/mensagens/tipos_de_mensagens/interactive_cta_url_messages.md +240 -0
- package/docs/mensagens/tipos_de_mensagens/interactive_flow_messages.md +8 -0
- package/docs/mensagens/tipos_de_mensagens/interactive_list_messages.md +300 -0
- package/docs/mensagens/tipos_de_mensagens/interactive_reply_buttons_messages.md +271 -0
- package/docs/mensagens/tipos_de_mensagens/location_messages.md +156 -0
- package/docs/mensagens/tipos_de_mensagens/location_request_messages.md +310 -0
- package/docs/mensagens/tipos_de_mensagens/message_with_link.md +8 -0
- package/docs/mensagens/tipos_de_mensagens/reaction_messages.md +144 -0
- package/docs/mensagens/tipos_de_mensagens/sticker_messages.md +157 -0
- package/docs/mensagens/tipos_de_mensagens/template_messages.md +20 -0
- package/docs/mensagens/tipos_de_mensagens/text_messages.md +142 -0
- package/docs/mensagens/tipos_de_mensagens/video_messages.md +149 -0
- package/docs/mensagens/visao_geral/AGENTS.md +8 -0
- package/docs/mensagens/visao_geral/send_messages.md +370 -0
- package/docs/mensagens_de_marketing/AGENTS.md +10 -0
- package/docs/mensagens_de_marketing/implementacao/AGENTS.md +10 -0
- package/docs/mensagens_de_marketing/implementacao/get_started.md +107 -0
- package/docs/mensagens_de_marketing/implementacao/onboard_business_customers.md +180 -0
- package/docs/mensagens_de_marketing/implementacao/send_marketing_messages.md +260 -0
- package/docs/mensagens_de_marketing/recursos/AGENTS.md +12 -0
- package/docs/mensagens_de_marketing/recursos/automatic_creative_optimization.md +8 -0
- package/docs/mensagens_de_marketing/recursos/conversion_measurement.md +8 -0
- package/docs/mensagens_de_marketing/recursos/deep_links.md +302 -0
- package/docs/mensagens_de_marketing/recursos/track_click_events.md +119 -0
- package/docs/mensagens_de_marketing/recursos/view_metrics.md +338 -0
- package/docs/mensagens_de_marketing/visao_geral/AGENTS.md +8 -0
- package/docs/mensagens_de_marketing/visao_geral/overview.md +26 -0
- package/docs/modelos/AGENTS.md +12 -0
- package/docs/modelos/gerenciamento_de_modelos/AGENTS.md +21 -0
- package/docs/modelos/gerenciamento_de_modelos/components.md +717 -0
- package/docs/modelos/gerenciamento_de_modelos/supported_languages.md +462 -0
- package/docs/modelos/gerenciamento_de_modelos/tap_target_url_title_override.md +211 -0
- package/docs/modelos/gerenciamento_de_modelos/template_categorization.md +499 -0
- package/docs/modelos/gerenciamento_de_modelos/template_comparison.md +136 -0
- package/docs/modelos/gerenciamento_de_modelos/template_library.md +526 -0
- package/docs/modelos/gerenciamento_de_modelos/template_management.md +148 -0
- package/docs/modelos/gerenciamento_de_modelos/template_media.md +8 -0
- package/docs/modelos/gerenciamento_de_modelos/template_migration.md +164 -0
- package/docs/modelos/gerenciamento_de_modelos/template_pacing.md +38 -0
- package/docs/modelos/gerenciamento_de_modelos/template_pausing.md +58 -0
- package/docs/modelos/gerenciamento_de_modelos/template_quality.md +47 -0
- package/docs/modelos/gerenciamento_de_modelos/template_review.md +74 -0
- package/docs/modelos/gerenciamento_de_modelos/time_to_live.md +88 -0
- package/docs/modelos/modelos_de_autenticacao/AGENTS.md +13 -0
- package/docs/modelos/modelos_de_autenticacao/authentication_best_practices.md +73 -0
- package/docs/modelos/modelos_de_autenticacao/authentication_templates.md +252 -0
- package/docs/modelos/modelos_de_autenticacao/autofill_button_authentication_templates.md +732 -0
- package/docs/modelos/modelos_de_autenticacao/copy_code_button_authentication_templates.md +402 -0
- package/docs/modelos/modelos_de_autenticacao/error_signals.md +143 -0
- package/docs/modelos/modelos_de_autenticacao/zero_tap_authentication_templates.md +742 -0
- package/docs/modelos/modelos_de_marketing/AGENTS.md +18 -0
- package/docs/modelos/modelos_de_marketing/call_permission_request_message_template.md +221 -0
- package/docs/modelos/modelos_de_marketing/catalog_templates.md +308 -0
- package/docs/modelos/modelos_de_marketing/coupon_templates.md +425 -0
- package/docs/modelos/modelos_de_marketing/custom_marketing_templates.md +537 -0
- package/docs/modelos/modelos_de_marketing/limited_time_offer_templates.md +496 -0
- package/docs/modelos/modelos_de_marketing/marketing_templates.md +112 -0
- package/docs/modelos/modelos_de_marketing/media_card_carousel_templates.md +770 -0
- package/docs/modelos/modelos_de_marketing/mpm_templates.md +717 -0
- package/docs/modelos/modelos_de_marketing/per_user_limits.md +42 -0
- package/docs/modelos/modelos_de_marketing/product_card_carousel_templates.md +515 -0
- package/docs/modelos/modelos_de_marketing/spm_templates.md +466 -0
- package/docs/modelos/modelos_de_utilidade/AGENTS.md +8 -0
- package/docs/modelos/modelos_de_utilidade/utility_templates.md +583 -0
- package/docs/modelos/visao_geral/AGENTS.md +8 -0
- package/docs/modelos/visao_geral/overview.md +163 -0
- package/docs/pagamentos/AGENTS.md +9 -0
- package/docs/pagamentos/pagamentos_na_india/AGENTS.md +19 -0
- package/docs/pagamentos/pagamentos_na_india/checkout_button_templates.md +1332 -0
- package/docs/pagamentos/pagamentos_na_india/enhanced_payment_links.md +93 -0
- package/docs/pagamentos/pagamentos_na_india/onboarding_apis.md +580 -0
- package/docs/pagamentos/pagamentos_na_india/orderdetailstemplate.md +205 -0
- package/docs/pagamentos/pagamentos_na_india/orderstatustemplate.md +143 -0
- package/docs/pagamentos/pagamentos_na_india/overview.md +102 -0
- package/docs/pagamentos/pagamentos_na_india/payment_links.md +581 -0
- package/docs/pagamentos/pagamentos_na_india/pg.md +1228 -0
- package/docs/pagamentos/pagamentos_na_india/upi_intent/AGENTS.md +12 -0
- package/docs/pagamentos/pagamentos_na_india/upi_intent/dynamic_vpa.md +572 -0
- package/docs/pagamentos/pagamentos_na_india/upi_intent/pg_guide_billdesk.md +343 -0
- package/docs/pagamentos/pagamentos_na_india/upi_intent/pg_guide_cashfree.md +145 -0
- package/docs/pagamentos/pagamentos_na_india/upi_intent/pg_guide_ccavenue.md +146 -0
- package/docs/pagamentos/pagamentos_na_india/upi_intent/upi_intent.md +660 -0
- package/docs/pagamentos/pagamentos_no_brasil/AGENTS.md +14 -0
- package/docs/pagamentos/pagamentos_no_brasil/boleto.md +104 -0
- package/docs/pagamentos/pagamentos_no_brasil/offsite_pix.md +128 -0
- package/docs/pagamentos/pagamentos_no_brasil/one_click_payments.md +226 -0
- package/docs/pagamentos/pagamentos_no_brasil/orderdetailstemplate.md +180 -0
- package/docs/pagamentos/pagamentos_no_brasil/orders.md +768 -0
- package/docs/pagamentos/pagamentos_no_brasil/overview.md +32 -0
- package/docs/pagamentos/pagamentos_no_brasil/payment_links.md +104 -0
- package/docs/parceiros/AGENTS.md +12 -0
- package/docs/parceiros/analise_do_app/AGENTS.md +8 -0
- package/docs/parceiros/analise_do_app/app_review.md +91 -0
- package/docs/parceiros/gerenciamento/AGENTS.md +14 -0
- package/docs/parceiros/gerenciamento/gerenciar_ativos_do_cliente/AGENTS.md +15 -0
- package/docs/parceiros/gerenciamento/gerenciar_ativos_do_cliente/manage_accounts.md +274 -0
- package/docs/parceiros/gerenciamento/gerenciar_ativos_do_cliente/manage_system_users.md +106 -0
- package/docs/parceiros/gerenciamento/gerenciar_ativos_do_cliente/manage_webhooks.md +277 -0
- package/docs/parceiros/gerenciamento/gerenciar_ativos_do_cliente/numeros_de_telefone/AGENTS.md +9 -0
- package/docs/parceiros/gerenciamento/gerenciar_ativos_do_cliente/numeros_de_telefone/manage_phone_numbers.md +248 -0
- package/docs/parceiros/gerenciamento/gerenciar_ativos_do_cliente/numeros_de_telefone/registering_phone_numbers.md +373 -0
- package/docs/parceiros/gerenciamento/gerenciar_ativos_do_cliente/share_and_revoke_credit_lines.md +551 -0
- package/docs/parceiros/gerenciamento/partner_led_business_verification.md +367 -0
- package/docs/parceiros/gerenciamento/pixel_tracking.md +35 -0
- package/docs/parceiros/gerenciamento/suporte_ao_parceiro/AGENTS.md +18 -0
- package/docs/parceiros/gerenciamento/suporte_ao_parceiro/adding_waba_to_mps.md +64 -0
- package/docs/parceiros/gerenciamento/suporte_ao_parceiro/business_customer_support.md +102 -0
- package/docs/parceiros/gerenciamento/suporte_ao_parceiro/migrating_customers_off_solutions_via_embedded_signup.md +151 -0
- package/docs/parceiros/gerenciamento/suporte_ao_parceiro/migrating_customers_off_solutions_via_meta_business_suite.md +234 -0
- package/docs/parceiros/gerenciamento/suporte_ao_parceiro/migrating_phone_numbers_among_solution_partners_programmatically.md +292 -0
- package/docs/parceiros/gerenciamento/suporte_ao_parceiro/migrating_phone_numbers_among_solution_partners_via_embedded_signup.md +118 -0
- package/docs/parceiros/gerenciamento/suporte_ao_parceiro/migrating_wabas_among_solution_partners_via_embedded_signup.md +76 -0
- package/docs/parceiros/gerenciamento/suporte_ao_parceiro/migrating_wabas_among_solutions_via_embedded_signup.md +90 -0
- package/docs/parceiros/gerenciamento/suporte_ao_parceiro/migrating_wabas_among_solutions_via_meta_business_suite.md +265 -0
- package/docs/parceiros/gerenciamento/suporte_ao_parceiro/support.md +48 -0
- package/docs/parceiros/gerenciamento/suporte_ao_parceiro/transferring_wabas_to_customers.md +8 -0
- package/docs/parceiros/integracao_de_clientes/AGENTS.md +9 -0
- package/docs/parceiros/integracao_de_clientes/cadastro_incorporado/AGENTS.md +26 -0
- package/docs/parceiros/integracao_de_clientes/cadastro_incorporado/app_only_install.md +135 -0
- package/docs/parceiros/integracao_de_clientes/cadastro_incorporado/automatic_events_api.md +204 -0
- package/docs/parceiros/integracao_de_clientes/cadastro_incorporado/bypass_phone_addition.md +52 -0
- package/docs/parceiros/integracao_de_clientes/cadastro_incorporado/custom_flows.md +40 -0
- package/docs/parceiros/integracao_de_clientes/cadastro_incorporado/default_flow.md +90 -0
- package/docs/parceiros/integracao_de_clientes/cadastro_incorporado/errors.md +185 -0
- package/docs/parceiros/integracao_de_clientes/cadastro_incorporado/hosted_es.md +153 -0
- package/docs/parceiros/integracao_de_clientes/cadastro_incorporado/implementation.md +417 -0
- package/docs/parceiros/integracao_de_clientes/cadastro_incorporado/onboarding_business_app_users.md +926 -0
- package/docs/parceiros/integracao_de_clientes/cadastro_incorporado/onboarding_customers_as_a_solution_partner.md +402 -0
- package/docs/parceiros/integracao_de_clientes/cadastro_incorporado/onboarding_customers_as_a_tech_provider.md +332 -0
- package/docs/parceiros/integracao_de_clientes/cadastro_incorporado/overview.md +168 -0
- package/docs/parceiros/integracao_de_clientes/cadastro_incorporado/pre_filled_data.md +524 -0
- package/docs/parceiros/integracao_de_clientes/cadastro_incorporado/pre_verified_numbers.md +291 -0
- package/docs/parceiros/integracao_de_clientes/cadastro_incorporado/versions/AGENTS.md +12 -0
- package/docs/parceiros/integracao_de_clientes/cadastro_incorporado/versions/version_2_public_preview.md +88 -0
- package/docs/parceiros/integracao_de_clientes/cadastro_incorporado/versions/version_3.md +98 -0
- package/docs/parceiros/integracao_de_clientes/cadastro_incorporado/versions/version_3_public_preview.md +88 -0
- package/docs/parceiros/integracao_de_clientes/cadastro_incorporado/versions/version_4.md +92 -0
- package/docs/parceiros/integracao_de_clientes/cadastro_incorporado/versions/versions.md +463 -0
- package/docs/parceiros/integracao_de_clientes/cadastro_incorporado/website_optional.md +57 -0
- package/docs/parceiros/integracao_de_clientes/outras_opcoes_de_integracao/AGENTS.md +11 -0
- package/docs/parceiros/integracao_de_clientes/outras_opcoes_de_integracao/multi_partner_solution_embedded_creation.md +178 -0
- package/docs/parceiros/integracao_de_clientes/outras_opcoes_de_integracao/multi_partner_solutions.md +775 -0
- package/docs/parceiros/integracao_de_clientes/outras_opcoes_de_integracao/multi_solution_conversations.md +319 -0
- package/docs/parceiros/integracao_de_clientes/outras_opcoes_de_integracao/partner_initiated_waba_creation.md +74 -0
- package/docs/parceiros/seja_um_parceiro/AGENTS.md +11 -0
- package/docs/parceiros/seja_um_parceiro/get_started_for_solution_partners.md +280 -0
- package/docs/parceiros/seja_um_parceiro/get_started_for_tech_providers.md +194 -0
- package/docs/parceiros/seja_um_parceiro/measurement_partners.md +146 -0
- package/docs/parceiros/seja_um_parceiro/upgrade_to_tech_partner.md +94 -0
- package/docs/parceiros/visao_geral/AGENTS.md +8 -0
- package/docs/parceiros/visao_geral/overview.md +190 -0
- package/docs/recado/AGENTS.md +9 -0
- package/docs/recado/precos/AGENTS.md +11 -0
- package/docs/recado/precos/pricing.md +915 -0
- package/docs/recado/precos/pricing_authentication_international_rates.md +464 -0
- package/docs/recado/precos/pricing_conversation_based_pricing.md +773 -0
- package/docs/recado/precos/pricing_updates_to_pricing.md +8 -0
- package/docs/recado/sobre_a_plataforma/AGENTS.md +10 -0
- package/docs/recado/sobre_a_plataforma/about_the_platform.md +217 -0
- package/docs/recado/sobre_a_plataforma/access_tokens.md +110 -0
- package/docs/recado/sobre_a_plataforma/permissions.md +55 -0
- package/docs/referencia/AGENTS.md +92 -0
- package/docs/referencia/bot_do_whatsapp_business/AGENTS.md +8 -0
- package/docs/referencia/bot_do_whatsapp_business/bot_details_api.md +762 -0
- package/docs/referencia/business/AGENTS.md +14 -0
- package/docs/referencia/business/add_phone_numbers_api.md +726 -0
- package/docs/referencia/business/client_whatsapp_business_accounts_api.md +1006 -0
- package/docs/referencia/business/owned_whatsapp_business_accounts.md +802 -0
- package/docs/referencia/business/whatsapp_business_accounts_api.md +1550 -0
- package/docs/referencia/business/whatsapp_business_partner_onboarding_to_mm_lite_api.md +783 -0
- package/docs/referencia/business/whatsapp_business_pre_verified_phone_number_sharing_api.md +790 -0
- package/docs/referencia/business/whatsapp_business_pre_verified_phone_numbers_api.md +886 -0
- package/docs/referencia/changelog.md +10 -0
- package/docs/referencia/conta_do_whatsapp_business/AGENTS.md +24 -0
- package/docs/referencia/conta_do_whatsapp_business/assigned_users_management_api.md +2202 -0
- package/docs/referencia/conta_do_whatsapp_business/business_account_api.md +267 -0
- package/docs/referencia/conta_do_whatsapp_business/business_account_extended_credits_api.md +275 -0
- package/docs/referencia/conta_do_whatsapp_business/conversational_automation_api.md +782 -0
- package/docs/referencia/conta_do_whatsapp_business/flows_api.md +1532 -0
- package/docs/referencia/conta_do_whatsapp_business/in_progress_on_behalf_requests_api.md +8 -0
- package/docs/referencia/conta_do_whatsapp_business/migration_intent_api.md +1581 -0
- package/docs/referencia/conta_do_whatsapp_business/obo_mobility_intent_api.md +8 -0
- package/docs/referencia/conta_do_whatsapp_business/phone_number_management_api.md +1686 -0
- package/docs/referencia/conta_do_whatsapp_business/schedules_api.md +1772 -0
- package/docs/referencia/conta_do_whatsapp_business/set_obo_mobility_intent_api.md +8 -0
- package/docs/referencia/conta_do_whatsapp_business/set_solution_migration_intent_api.md +8 -0
- package/docs/referencia/conta_do_whatsapp_business/subscribed_apps_api.md +2178 -0
- package/docs/referencia/conta_do_whatsapp_business/template_api.md +976 -0
- package/docs/referencia/conta_do_whatsapp_business/whatsapp_business_account_activities_api.md +842 -0
- package/docs/referencia/conta_do_whatsapp_business/whatsapp_business_account_api.md +1384 -0
- package/docs/referencia/conta_do_whatsapp_business/whatsapp_business_account_solutions_list_api.md +854 -0
- package/docs/referencia/grupo/AGENTS.md +11 -0
- package/docs/referencia/grupo/groups_invite_link_api.md +304 -0
- package/docs/referencia/grupo/groups_join_requests_api.md +686 -0
- package/docs/referencia/grupo/groups_participants_api.md +274 -0
- package/docs/referencia/grupo/groups_query_api.md +436 -0
- package/docs/referencia/historico_de_mensagens/AGENTS.md +8 -0
- package/docs/referencia/historico_de_mensagens/whatsapp_business_message_history_events_api.md +866 -0
- package/docs/referencia/inscricao/AGENTS.md +10 -0
- package/docs/referencia/inscricao/application_connected_client_businesses.md +812 -0
- package/docs/referencia/inscricao/application_solutions_api.md +874 -0
- package/docs/referencia/inscricao/solution_creation_api.md +824 -0
- package/docs/referencia/intencao_de_migracao_da_conta_do_whatsapp_business/AGENTS.md +8 -0
- package/docs/referencia/intencao_de_migracao_da_conta_do_whatsapp_business/migration_intent_details_api.md +724 -0
- package/docs/referencia/midias/AGENTS.md +9 -0
- package/docs/referencia/midias/media_api.md +342 -0
- package/docs/referencia/midias/media_download_api.md +160 -0
- package/docs/referencia/numero_da_conta_do_whatsapp/AGENTS.md +8 -0
- package/docs/referencia/numero_da_conta_do_whatsapp/whatsapp_account_number_api.md +778 -0
- package/docs/referencia/perfil_do_whatsapp_business/AGENTS.md +8 -0
- package/docs/referencia/perfil_do_whatsapp_business/whatsapp_business_profile_node_api.md +1494 -0
- package/docs/referencia/solucao_do_whatsapp_business/AGENTS.md +14 -0
- package/docs/referencia/solucao_do_whatsapp_business/accept_deactivation_request_api.md +762 -0
- package/docs/referencia/solucao_do_whatsapp_business/access_token_api.md +704 -0
- package/docs/referencia/solucao_do_whatsapp_business/reject_deactivation_request_api.md +812 -0
- package/docs/referencia/solucao_do_whatsapp_business/send_deactivation_request_api.md +778 -0
- package/docs/referencia/solucao_do_whatsapp_business/solution_accept_api.md +812 -0
- package/docs/referencia/solucao_do_whatsapp_business/solution_details_api.md +768 -0
- package/docs/referencia/solucao_do_whatsapp_business/solution_reject_api.md +798 -0
- package/docs/referencia/telefone_do_whatsapp_business/AGENTS.md +29 -0
- package/docs/referencia/telefone_do_whatsapp_business/block_api.md +542 -0
- package/docs/referencia/telefone_do_whatsapp_business/business_compliance_information_api.md +1608 -0
- package/docs/referencia/telefone_do_whatsapp_business/business_encryption_api.md +1402 -0
- package/docs/referencia/telefone_do_whatsapp_business/calling_api.md +598 -0
- package/docs/referencia/telefone_do_whatsapp_business/encrypted_messages_api.md +482 -0
- package/docs/referencia/telefone_do_whatsapp_business/groups_management_api.md +485 -0
- package/docs/referencia/telefone_do_whatsapp_business/marketing_messages_lite_api.md +315 -0
- package/docs/referencia/telefone_do_whatsapp_business/media_upload_api.md +188 -0
- package/docs/referencia/telefone_do_whatsapp_business/message_api.md +1798 -0
- package/docs/referencia/telefone_do_whatsapp_business/phone_number_api.md +377 -0
- package/docs/referencia/telefone_do_whatsapp_business/phone_number_deregister_api.md +714 -0
- package/docs/referencia/telefone_do_whatsapp_business/phone_number_registration.md +780 -0
- package/docs/referencia/telefone_do_whatsapp_business/phone_number_verification_request_code_api.md +734 -0
- package/docs/referencia/telefone_do_whatsapp_business/register_api.md +411 -0
- package/docs/referencia/telefone_do_whatsapp_business/settings_api.md +674 -0
- package/docs/referencia/telefone_do_whatsapp_business/verify_code_api.md +746 -0
- package/docs/referencia/telefone_do_whatsapp_business/whatsapp_business_account_message_history_api.md +932 -0
- package/docs/referencia/telefone_do_whatsapp_business/whatsapp_business_account_official_business_account_status_api.md +1540 -0
- package/docs/referencia/telefone_do_whatsapp_business/whatsapp_business_account_phone_number_api.md +1600 -0
- package/docs/referencia/telefone_do_whatsapp_business/whatsapp_business_profile_api.md +1478 -0
- package/docs/referencia/telefone_do_whatsapp_business/whatsapp_business_qr_code_api.md +1179 -0
- package/docs/referencia/telefone_do_whatsapp_business/whatsapp_business_qr_code_management_api.md +1315 -0
- package/docs/referencia/telefone_pre_verificado_do_whatsapp_business/AGENTS.md +11 -0
- package/docs/referencia/telefone_pre_verificado_do_whatsapp_business/request_verification_code_api.md +778 -0
- package/docs/referencia/telefone_pre_verificado_do_whatsapp_business/verify_code_api.md +768 -0
- package/docs/referencia/telefone_pre_verificado_do_whatsapp_business/whatsapp_business_pre_verified_phone_number_api.md +1382 -0
- package/docs/referencia/telefone_pre_verificado_do_whatsapp_business/whatsapp_business_pre_verified_phone_number_partners_api.md +820 -0
- package/docs/referencia/usuario/AGENTS.md +8 -0
- package/docs/referencia/usuario/assigned_whatsapp_business_accounts_api.md +864 -0
- package/docs/referencia/webhooks/AGENTS.md +8 -0
- package/docs/referencia/webhooks/whatsapp_incoming_webhook_payload.md +1655 -0
- package/docs/suporte/AGENTS.md +13 -0
- package/docs/suporte/api_status_page.md +134 -0
- package/docs/suporte/error_codes.md +1194 -0
- package/docs/suporte/experiments.md +26 -0
- package/docs/suporte/health_status.md +225 -0
- package/docs/suporte/load_testing.md +340 -0
- package/docs/suporte/support.md +408 -0
- package/docs/visao_geral/AGENTS.md +8 -0
- package/docs/visao_geral/overview.md +2590 -0
- package/docs/webhooks/AGENTS.md +41 -0
- package/docs/webhooks/referencia/AGENTS.md +20 -0
- package/docs/webhooks/referencia/account_alerts.md +190 -0
- package/docs/webhooks/referencia/account_review_update.md +90 -0
- package/docs/webhooks/referencia/account_update.md +379 -0
- package/docs/webhooks/referencia/business_capability_update.md +121 -0
- package/docs/webhooks/referencia/history.md +302 -0
- package/docs/webhooks/referencia/message_template_components_update.md +179 -0
- package/docs/webhooks/referencia/message_template_quality_update.md +136 -0
- package/docs/webhooks/referencia/message_template_status_update.md +253 -0
- package/docs/webhooks/referencia/messages/AGENTS.md +24 -0
- package/docs/webhooks/referencia/messages/audio.md +298 -0
- package/docs/webhooks/referencia/messages/button.md +170 -0
- package/docs/webhooks/referencia/messages/contacts.md +491 -0
- package/docs/webhooks/referencia/messages/document.md +307 -0
- package/docs/webhooks/referencia/messages/errors.md +132 -0
- package/docs/webhooks/referencia/messages/image.md +304 -0
- package/docs/webhooks/referencia/messages/interactive.md +225 -0
- package/docs/webhooks/referencia/messages/location.md +296 -0
- package/docs/webhooks/referencia/messages/messages.md +44 -0
- package/docs/webhooks/referencia/messages/order.md +208 -0
- package/docs/webhooks/referencia/messages/reaction.md +178 -0
- package/docs/webhooks/referencia/messages/status.md +364 -0
- package/docs/webhooks/referencia/messages/sticker.md +298 -0
- package/docs/webhooks/referencia/messages/system.md +140 -0
- package/docs/webhooks/referencia/messages/text.md +322 -0
- package/docs/webhooks/referencia/messages/unsupported.md +165 -0
- package/docs/webhooks/referencia/messages/video.md +304 -0
- package/docs/webhooks/referencia/outros_webhooks/AGENTS.md +16 -0
- package/docs/webhooks/referencia/outros_webhooks/partner_solutions.md +114 -0
- package/docs/webhooks/referencia/outros_webhooks/payment_configuration_update.md +135 -0
- package/docs/webhooks/referencia/outros_webhooks/phone_number_name_update.md +129 -0
- package/docs/webhooks/referencia/outros_webhooks/phone_number_quality_update.md +172 -0
- package/docs/webhooks/referencia/outros_webhooks/security.md +108 -0
- package/docs/webhooks/referencia/outros_webhooks/smb_app_state_sync.md +146 -0
- package/docs/webhooks/referencia/outros_webhooks/smb_message_echoes.md +143 -0
- package/docs/webhooks/referencia/outros_webhooks/template_category_update.md +154 -0
- package/docs/webhooks/referencia/outros_webhooks/user_preferences.md +150 -0
- package/docs/webhooks/visao_geral/AGENTS.md +11 -0
- package/docs/webhooks/visao_geral/message_echoes.md +8 -0
- package/docs/webhooks/visao_geral/override.md +235 -0
- package/docs/webhooks/visao_geral/overview.md +158 -0
- package/docs/webhooks/visao_geral/set_up_whatsapp_echo_bot.md +109 -0
- package/package.json +50 -0
|
@@ -0,0 +1,1090 @@
|
|
|
1
|
+
<!-- Source: https://developers.facebook.com/documentation/business-messaging/whatsapp/calling/sip -->
|
|
2
|
+
<!-- Scraped: 2025-12-20T17:41:07.774Z -->
|
|
3
|
+
|
|
4
|
+
# Protocolo de Iniciação de Sessão (SIP)
|
|
5
|
+
|
|
6
|
+
Updated: 10 de nov de 2025
|
|
7
|
+
|
|
8
|
+
Quando o SIP está habilitado, **não é possível usar pontos de extremidade da Graph API relacionados a ligações**, além disso, **webhooks relacionados a ligações não são enviados**.
|
|
9
|
+
|
|
10
|
+
## Visão geral
|
|
11
|
+
|
|
12
|
+
O Protocolo de Iniciação de Sessão ([SIP](https://l.facebook.com/l.php?u=https%3A%2F%2Fdatatracker.ietf.org%2Fdoc%2Fhtml%2Frfc3261&h=AT3mEXy5SQxoNBM16yWnv-zFRsnAcfQ6U9uaIiy3KJ_IsFv20vYy9FfH1Zr-bpe3yADDDWYthJ_icXcXnSRbf7ddIn_gudRWIOzOABCGQmxolfrrWCSmX2EU4FLIScyrD4dgDdWOeDTj0LrAWBhRYghsS9E)) é um protocolo de sinalização usado para iniciar, manter, modificar e encerrar sessões de comunicação em tempo real entre dois ou mais pontos de extremidade.
|
|
13
|
+
|
|
14
|
+
A API de Ligações Comerciais do WhatsApp oferece suporte ao uso do SIP como protocolo de sinalização em vez dos pontos de extremidade da Graph API e Webhooks.
|
|
15
|
+
|
|
16
|
+
### Antes de começar
|
|
17
|
+
|
|
18
|
+
Antes de começar com a sinalização de ligações do SIP, confirme o seguinte:
|
|
19
|
+
|
|
20
|
+
- Você cumpre os pré-requisitos gerais de [ligação](/documentation/business-messaging/whatsapp/calling#step-1--prerequisites)- Verifique se o app tem permissões de mensagem para o número de telefone comercial para o qual quer habilitar o SIP.
|
|
21
|
+
- Para testar esse processo, envie e receba mensagens por meio dos pontos de extremidade de mensagens da Graph API. Depois, use o mesmo app para configurar o servidor SIP no número de telefone comercial para fazer ligações.- Confirme usando a [API de Status de Integridade](/documentation/business-messaging/whatsapp/support/health-status) com `PHONE_NUMBER_ID`.- O modo do app é "Publicado", não "Desenvolvimento".- Você tem um servidor de SIP de terceiros compatível com padrões que oferece suporte para [TLS](/documentation/business-messaging/whatsapp/calling/sip#security) e autenticação de digestão
|
|
22
|
+
|
|
23
|
+
### Configurações possíveis de sinalização e mídia
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
Configuração padrão após habilitar as ligações
|
|
30
|
+
|
|
31
|
+
SIP com WebRTC
|
|
32
|
+
|
|
33
|
+
SIP com mídia SDES
|
|
34
|
+
|
|
35
|
+
Protocolo de sinalização
|
|
36
|
+
|
|
37
|
+
Graph APIs + Webhooks
|
|
38
|
+
|
|
39
|
+
SIP (precisa de [habilitação](/documentation/business-messaging/whatsapp/calling/sip#configure-update-sip-settings-on-business-phone-number) explícita)
|
|
40
|
+
|
|
41
|
+
SIP (precisa de [habilitação](/documentation/business-messaging/whatsapp/calling/sip#configure-update-sip-settings-on-business-phone-number) explícita)
|
|
42
|
+
|
|
43
|
+
Transporte de sinalização
|
|
44
|
+
|
|
45
|
+
HTTPS
|
|
46
|
+
|
|
47
|
+
TLS
|
|
48
|
+
|
|
49
|
+
TLS
|
|
50
|
+
|
|
51
|
+
Protocolo de mídia
|
|
52
|
+
|
|
53
|
+
WebRTC (ICE + DTLS\* + SRTP)
|
|
54
|
+
|
|
55
|
+
WebRTC (ICE + DTLS + SRTP)
|
|
56
|
+
|
|
57
|
+
[SDES](https://l.facebook.com/l.php?u=https%3A%2F%2Fdatatracker.ietf.org%2Fdoc%2Fhtml%2Frfc4568&h=AT3mEXy5SQxoNBM16yWnv-zFRsnAcfQ6U9uaIiy3KJ_IsFv20vYy9FfH1Zr-bpe3yADDDWYthJ_icXcXnSRbf7ddIn_gudRWIOzOABCGQmxolfrrWCSmX2EU4FLIScyrD4dgDdWOeDTj0LrAWBhRYghsS9E) SRTP (precisa de [habilitação](/documentation/business-messaging/whatsapp/calling/sip#configure-sdes-for-srtp-key-exchange-protocol) explícita)
|
|
58
|
+
|
|
59
|
+
Codec de áudio
|
|
60
|
+
|
|
61
|
+
OPUS
|
|
62
|
+
|
|
63
|
+
OPUS
|
|
64
|
+
|
|
65
|
+
OPUS
|
|
66
|
+
|
|
67
|
+
\*Observação: você pode usar SDES em vez de ICE+DTLS com a Graph API + sinalização de Webhook
|
|
68
|
+
|
|
69
|
+
## Fluxos de ligação usando o SIP
|
|
70
|
+
|
|
71
|
+
Antes de começar, verifique se você [habilitou e configurou o SIP no número de telefone comercial](/documentation/business-messaging/whatsapp/calling/sip#configure-update-sip-settings-on-business-phone-number). A Meta gera uma senha de usuário de SIP única para cada combinação de número de telefone comercial e app. Você precisará dessas informações e poderá recuperá-las usando o [ponto de extremidade get Call Settings](/documentation/business-messaging/whatsapp/calling/sip#get-phone-number-calling-settings--sip-).
|
|
72
|
+
|
|
73
|
+
### Segurança
|
|
74
|
+
|
|
75
|
+
- O transporte de TLS é obrigatório para o SIP. A Meta apresentará um certificado de servidor válido com um nome de assunto que cubra nosso domínio SIP wa.meta.vc. Seu servidor de SIP deve fazer o mesmo, já que a Meta garante que o certificado é válido e o nome de assunto abrange o domínio de SIP configurado no número de telefone comercial
|
|
76
|
+
- A Meta NÃO aceita o protocolo TLS mútuo (também conhecido como mTLS). Ou seja, quando a Meta atua como cliente TLS, seu servidor TLS não deve solicitar o certificado do cliente. Se você ainda solicitar o certificado de cliente, a Meta apresentará um certificado de cliente, mas o nome de assunto do certificado vai se referir a um host dinâmico aleatório que não passará na validação do certificado.- A Meta adiciona `transport=TLS` ao URI de solicitação como parte das solicitações de SIP para o servidor de SIP parceiro- Para ligações iniciadas pela empresa, o convite de SIP do seu servidor de SIP será desafiado usando a autenticação de digestão. Para mais detalhes, consulte [Ligações iniciadas pela empresa](/documentation/business-messaging/whatsapp/calling/sip#business-initiated-calls)- Para ligações iniciadas pelo usuário, recomendamos que você desafie a solicitação de INVITE do SIP da Meta a fim de usar a autenticação de digestão para aumentar a segurança. Para saber mais, consulte [Ligações iniciadas pelo usuário](/documentation/business-messaging/whatsapp/calling/sip#user-initiated-calls)
|
|
77
|
+
|
|
78
|
+
### Como testar se você tem um certificado TLS válido
|
|
79
|
+
|
|
80
|
+
Quando um usuário do WhatsApp liga para uma empresa, um motivo comum que pode fazer com que seu servidor SIP **não** receba o convite de SIP da Meta é o erro de validação do certificado. É possível usar as informações exibidas para confirmar se a configuração é válida.
|
|
81
|
+
|
|
82
|
+
Execute o comando `openssl s_client -quiet -verify_hostname {hostname} -connect {hostname}:{port}` substituindo "hostname" e "port" pelos seus valores.
|
|
83
|
+
|
|
84
|
+
#### Exemplo de certificado de servidor válido
|
|
85
|
+
|
|
86
|
+
```
|
|
87
|
+
$ openssl s_client -quiet -verify_hostname meta-voip.example.com -connect meta-voip.example.com:5061
|
|
88
|
+
Connecting to 64:ff9b::68f8:b0b8
|
|
89
|
+
depth=2 C=US, ST=New Jersey, L=Jersey City, O=The USERTRUST Network, CN=USERTrust RSA Certification Authority
|
|
90
|
+
verify return:1
|
|
91
|
+
depth=1 C=AT, O=ZeroSSL, CN=ZeroSSL RSA Domain Secure Site CA
|
|
92
|
+
verify return:1
|
|
93
|
+
depth=0 CN=example.com
|
|
94
|
+
verify return:1
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
#### Exemplo de hostname:port não está escutando em TLS
|
|
98
|
+
|
|
99
|
+
```
|
|
100
|
+
openssl s_client -quiet -verify_hostname lb01.voice.usw2.pure.cloud -connect lb01.voice.usw2.pure.cloud:5060
|
|
101
|
+
Connecting to 34.211.206.63
|
|
102
|
+
009F0DFB01000000:error:0A000126:SSL routines::unexpected eof while reading:ssl/record/rec_layer_s3.c:693:
|
|
103
|
+
```
|
|
104
|
+
|
|
105
|
+
#### Exemplo de certificado inválido
|
|
106
|
+
|
|
107
|
+
```
|
|
108
|
+
$ openssl s_client -quiet -verify_hostname meta-inb.byoc.mypurecloud.com -connect meta-inb.byoc.mypurecloud.com:5061
|
|
109
|
+
Connecting to 64:ff9b::3652:f1c0
|
|
110
|
+
depth=0 jurisdictionC=US, jurisdictionST=California, businessCategory=Private Organization, serialNumber=1515861, C=US, ST=Indiana, L=Indianapolis, O=Genesys Cloud Services, Inc., CN=voice.mypurecloud.com
|
|
111
|
+
verify error:num=62:hostname mismatch
|
|
112
|
+
verify return:1
|
|
113
|
+
depth=2 C=US, O=DigiCert Inc, OU=www.digicert.com, CN=DigiCert High Assurance EV Root CA
|
|
114
|
+
verify return:1
|
|
115
|
+
depth=1 C=US, O=DigiCert Inc, OU=www.digicert.com, CN=DigiCert SHA2 Extended Validation Server CA
|
|
116
|
+
verify return:1
|
|
117
|
+
depth=0 jurisdictionC=US, jurisdictionST=California, businessCategory=Private Organization, serialNumber=1515861, C=US, ST=Indiana, L=Indianapolis, O=Genesys Cloud Services, Inc., CN=voice.mypurecloud.com
|
|
118
|
+
verify return:1
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
Nesse caso, você pode alterar o certificado para corresponder ao nome de host ou [alterar o nome de host configurado do servidor SIP](/documentation/business-messaging/whatsapp/calling/sip#configure-update-sip-settings-on-business-phone-number) para corresponder ao certificado
|
|
122
|
+
|
|
123
|
+
### Ligações iniciadas pela empresa
|
|
124
|
+
|
|
125
|
+
#### Pré-requisitos
|
|
126
|
+
|
|
127
|
+
- Você tem a aprovação de permissão de ligação necessária do usuário do WhatsApp
|
|
128
|
+
- [Saiba como obter as permissões de ligação de usuários](/documentation/business-messaging/whatsapp/calling/user-call-permissions)- [Recupere a senha do SIP gerada pela Meta](/documentation/business-messaging/whatsapp/calling/sip#include-sip-user-password) e configure-a no servidor de SIP para que ele possa responder aos desafios de autenticação de digester dos servidores de SIP da Meta
|
|
129
|
+
|
|
130
|
+
#### Fluxo da ligação
|
|
131
|
+
|
|
132
|
+
- Envie um [SIP INVITE](/documentation/business-messaging/whatsapp/calling/sip#business-initiated-calls--with-webrtc-media-) inicial aos nossos servidores. Nosso domínio de SIP é wa.meta.vc. Para iniciar uma ligação para um usuário do WhatsApp com o número de telefone 11234567890, o URI de solicitação do SIP deve ser "sip: +11234567890@wa.meta.vc;transport=tls".
|
|
133
|
+
- Essa solicitação falhará com uma mensagem "SIP 407 Proxy Authentication required".- Envie um segundo [SIP INVITE](/documentation/business-messaging/whatsapp/calling/sip#business-initiated-calls--with-webrtc-media-) com o cabeçalho de autorização correto de acordo com o [RFC 3261](https://l.facebook.com/l.php?u=https%3A%2F%2Fdatatracker.ietf.org%2Fdoc%2Fhtml%2Frfc3261%23section-22&h=AT3mEXy5SQxoNBM16yWnv-zFRsnAcfQ6U9uaIiy3KJ_IsFv20vYy9FfH1Zr-bpe3yADDDWYthJ_icXcXnSRbf7ddIn_gudRWIOzOABCGQmxolfrrWCSmX2EU4FLIScyrD4dgDdWOeDTj0LrAWBhRYghsS9E).
|
|
134
|
+
- O atributo de nome de usuário do campo de autorização deve corresponder ao nome de usuário do cabeçalho "from", que é o número de telefone comercial- A senha é gerada pela Meta e pode ser recuperada usando o [ponto de extremidade get Call Settings](/documentation/business-messaging/whatsapp/calling/sip#get-phone-number-calling-settings--sip-)- A parte do nome de usuário do cabeçalho "from" deve ser o número de telefone comercial totalmente normalizado- O nome de domínio do cabeçalho "from" deve corresponder ao servidor SIP configurado no número de telefone comercial- O `SDP Offer` incluído é compatível com ICE, DTLS-SRTP e OPUS (basicamente mídia WebRTC)- Envie o [SIP INVITE](/documentation/business-messaging/whatsapp/calling/sip#business-initiated-calls--with-webrtc-media-) para o número do usuário do WhatsApp que você deseja chamar.
|
|
135
|
+
|
|
136
|
+
### Ligações iniciadas pelo usuário
|
|
137
|
+
|
|
138
|
+
#### Pré-requisitos
|
|
139
|
+
|
|
140
|
+
- Se você planeja usar a autenticação de digestão do SIP, [recupere a senha do SIP gerada pela Meta](/documentation/business-messaging/whatsapp/calling/sip#include-sip-user-password) e configure-a no servidor de SIP para que ele possa responder aos desafios de autenticação de digestão dos servidores de SIP da Meta
|
|
141
|
+
|
|
142
|
+
#### Fluxo da ligação
|
|
143
|
+
|
|
144
|
+
- O usuário do WhatsApp liga para o número de telefone comercial e não sabe se a empresa está usando o SIP ou a Graph API. Ou seja, a experiência do usuário é idêntica- Se o número de telefone comercial estiver habilitado para SIP, a Meta enviará um [SIP INVITE](/documentation/business-messaging/whatsapp/calling/sip#user-initiated-calls--with-webrtc-media-) para o servidor [configurado no número de telefone comercial](/documentation/business-messaging/whatsapp/calling/sip#configure-update-sip-settings-on-business-phone-number)- Você responde com [Desafio de autenticação do SIP](/documentation/business-messaging/whatsapp/calling/sip#user-initiated-calls-with-digest-auth--with-sdes-media-) (recomendado) ou [SIP OK](/documentation/business-messaging/whatsapp/calling/sip#user-initiated-calls--with-webrtc-media-) e transmite em uma resposta SDP
|
|
145
|
+
|
|
146
|
+
Se não estiver recebendo o SIP INVITE da Meta, consulte as [perguntas frequentes específicas sobre o SIP](/documentation/business-messaging/whatsapp/calling/faq#session-initiation-protocol--sip--faq) para solucionar o problema
|
|
147
|
+
|
|
148
|
+
|
|
149
|
+
[Confira exemplos de solicitações de SIP](/documentation/business-messaging/whatsapp/calling/sip#sample-sip-requests)
|
|
150
|
+
|
|
151
|
+
[Saiba mais sobre o Protocolo de Descrição de Sessão (SDP)](https://l.facebook.com/l.php?u=https%3A%2F%2Fwww.rfc-editor.org%2Frfc%2Frfc8866.html&h=AT3mEXy5SQxoNBM16yWnv-zFRsnAcfQ6U9uaIiy3KJ_IsFv20vYy9FfH1Zr-bpe3yADDDWYthJ_icXcXnSRbf7ddIn_gudRWIOzOABCGQmxolfrrWCSmX2EU4FLIScyrD4dgDdWOeDTj0LrAWBhRYghsS9E)
|
|
152
|
+
|
|
153
|
+
[Confira exemplos de estruturas SDP](/documentation/business-messaging/whatsapp/calling/reference#sdp-overview-and-sample-sdp-structures)
|
|
154
|
+
|
|
155
|
+
#### Cabeçalhos de SIP personalizados
|
|
156
|
+
|
|
157
|
+
Usamos os cabeçalhos de SIP personalizados a seguir, específicos para ligações iniciadas pelo usuário
|
|
158
|
+
|
|
159
|
+
Nome do cabeçalho
|
|
160
|
+
|
|
161
|
+
Metadados
|
|
162
|
+
|
|
163
|
+
Descrição
|
|
164
|
+
|
|
165
|
+
x-wa-meta-cta-payload
|
|
166
|
+
|
|
167
|
+
Opcional; String
|
|
168
|
+
|
|
169
|
+
É exibido quando o usuário inicia uma ligação em um botão de ligação que especifica a carga da empresa. [Saiba mais](/documentation/business-messaging/whatsapp/calling/call-button-messages-deep-links#send-interactive-message-with-a-whatsapp-call-button)
|
|
170
|
+
|
|
171
|
+
x-wa-meta-deeplink-payload
|
|
172
|
+
|
|
173
|
+
Opcional; String
|
|
174
|
+
|
|
175
|
+
É exibido quando o usuário inicia uma ligação a partir de um deep link que tem carga especificada pela empresa. [Saiba mais](/documentation/business-messaging/whatsapp/calling/call-button-messages-deep-links#send-payload-data-in-call-deeplink)
|
|
176
|
+
|
|
177
|
+
## Definir/atualizar as configurações de SIP no número de telefone comercial
|
|
178
|
+
|
|
179
|
+
Use este ponto de extremidade para atualizar as configurações de ligação para um número de telefone comercial individual.
|
|
180
|
+
|
|
181
|
+
### Sintaxe da solicitação
|
|
182
|
+
|
|
183
|
+
```
|
|
184
|
+
POST /<PHONE_NUMBER_ID>/settings
|
|
185
|
+
```
|
|
186
|
+
|
|
187
|
+
### Parâmetros do ponto de extremidade
|
|
188
|
+
|
|
189
|
+
|
|
190
|
+
|
|
191
|
+
Espaço reservado
|
|
192
|
+
|
|
193
|
+
Descrição
|
|
194
|
+
|
|
195
|
+
Exemplo de valor
|
|
196
|
+
|
|
197
|
+
`<PHONE_NUMBER_ID>`
|
|
198
|
+
|
|
199
|
+
_Número inteiro_
|
|
200
|
+
|
|
201
|
+
**Obrigatório**
|
|
202
|
+
|
|
203
|
+
|
|
204
|
+
O número de telefone comercial cujas configurações da API de Ligações estão sendo atualizadas.
|
|
205
|
+
|
|
206
|
+
[Saiba mais sobre a formatação de números de telefone na API de Nuvem](/documentation/business-messaging/whatsapp/business-phone-numbers/phone-numbers)
|
|
207
|
+
|
|
208
|
+
`+12784358810`
|
|
209
|
+
|
|
210
|
+
### Corpo da solicitação
|
|
211
|
+
|
|
212
|
+
```
|
|
213
|
+
{ "calling": { ... // other calling api settings "sip": { "status": "ENABLED", "servers": [ { "hostname": SIP_SERVER_HOSTNAME "port": SIP_SERVER_PORT, "request_uri_user_params": { "KEY1": "VALUE1", // for cases like trunk groups (tgrp) "KEY2": "VALUE2", } } ] } }, // Other non calling api feature configurations}
|
|
214
|
+
```
|
|
215
|
+
|
|
216
|
+
### Parâmetros do corpo
|
|
217
|
+
|
|
218
|
+
Parâmetro
|
|
219
|
+
|
|
220
|
+
Descrição
|
|
221
|
+
|
|
222
|
+
Exemplo de valor
|
|
223
|
+
|
|
224
|
+
`status`
|
|
225
|
+
|
|
226
|
+
_String_
|
|
227
|
+
|
|
228
|
+
**Opcional**
|
|
229
|
+
|
|
230
|
+
|
|
231
|
+
Habilite ou desabilite a sinalização de ligações para o número de telefone comercial em questão.
|
|
232
|
+
|
|
233
|
+
O padrão é `DISABLED`.
|
|
234
|
+
|
|
235
|
+
Quando `status` for `ENABLED`, o número de telefone usará exclusivamente o SIP para sinalização de ligações e não funcionará com as Graph APIs. Nenhum webhook é enviado.
|
|
236
|
+
|
|
237
|
+
Quando `status` é definido como `DISABLED`, os valores de `servers` do SIP não são redefinidos.
|
|
238
|
+
|
|
239
|
+
Se você habilitar o SIP para o mesmo número de telefone novamente, os valores `servers` configurados anteriormente entrarão em vigor.
|
|
240
|
+
|
|
241
|
+
É possível configurar o status e os servidores SIP na mesma solicitação
|
|
242
|
+
|
|
243
|
+
`“ENABLED”`
|
|
244
|
+
|
|
245
|
+
`“DISABLED”`
|
|
246
|
+
|
|
247
|
+
`servers`
|
|
248
|
+
|
|
249
|
+
_String_
|
|
250
|
+
|
|
251
|
+
**Opcional**
|
|
252
|
+
|
|
253
|
+
|
|
254
|
+
A configuração de roteamento do servidor SIP.
|
|
255
|
+
|
|
256
|
+
Cada app pode ter apenas um servidor SIP configurado. Os servidores são uma matriz preparada para o futuro. Isso também torna o esquema de carga POST consistente com o esquema de carga GET, porque é possível ter vários apps, cada um com o próprio servidor SIP. Na carga GET, se vir vários servidores SIP, isso significa que você usou a API POST com diferentes tokens de acesso que pertencem a diferentes apps.
|
|
257
|
+
|
|
258
|
+
O app associado é extraído do token de acesso usado para fazer a chamada de API.
|
|
259
|
+
|
|
260
|
+
Como o número de telefone comercial pode ser usado em vários apps, cada número pode ser atendido por diversos servidores SIP.
|
|
261
|
+
|
|
262
|
+
Para excluir um servidor SIP previamente configurado, passe uma matriz vazia para este campo. Se alguns servidores permanecerem após a limpeza, isso significa que eles podem pertencer a apps diferentes. Por isso, será necessário usar os tokens de acesso correspondentes para limpá-los
|
|
263
|
+
|
|
264
|
+
`hostname` – (_String_) **Obrigatório**
|
|
265
|
+
|
|
266
|
+
O nome de host do servidor SIP.
|
|
267
|
+
|
|
268
|
+
As solicitações devem usar TLS.
|
|
269
|
+
|
|
270
|
+
`port` – (_String_) **Obrigatório**
|
|
271
|
+
|
|
272
|
+
A porta do servidor SIP que aceitará as solicitações.
|
|
273
|
+
|
|
274
|
+
As solicitações devem usar TLS.
|
|
275
|
+
|
|
276
|
+
A porta padrão é 5061
|
|
277
|
+
|
|
278
|
+
`request_uri_user_params` – (_String_) **Opcional**
|
|
279
|
+
|
|
280
|
+
Um campo opcional para passar os parâmetros que você deseja incluir na parte do usuário do URI de solicitação usado no nosso SIP INVITE para o servidor SIP.
|
|
281
|
+
|
|
282
|
+
O tamanho máximo da chave/valor é de 128 caracteres.
|
|
283
|
+
|
|
284
|
+
Um exemplo de caso de uso seriam grupos de tronco ([RFC 4904](https://l.facebook.com/l.php?u=https%3A%2F%2Fdatatracker.ietf.org%2Fdoc%2Fhtml%2Frfc4904&h=AT3mEXy5SQxoNBM16yWnv-zFRsnAcfQ6U9uaIiy3KJ_IsFv20vYy9FfH1Zr-bpe3yADDDWYthJ_icXcXnSRbf7ddIn_gudRWIOzOABCGQmxolfrrWCSmX2EU4FLIScyrD4dgDdWOeDTj0LrAWBhRYghsS9E))
|
|
285
|
+
|
|
286
|
+
- sip:+1234567890@sip.example.com;- tgrp=wacall;- trunk-context=byoc.example.com
|
|
287
|
+
|
|
288
|
+
Este exemplo tem dois parâmetros de usuário para tgrp e trunk-context.
|
|
289
|
+
|
|
290
|
+
```
|
|
291
|
+
"servers": [ { "hostname": SIP_SERVER_HOSTNAME "port": SIP_SERVER_PORT, "request_uri_user_params": { "KEY1": "VALUE1", "KEY2": "VALUE2", } }]
|
|
292
|
+
```
|
|
293
|
+
|
|
294
|
+
### Resposta de sucesso
|
|
295
|
+
|
|
296
|
+
```
|
|
297
|
+
{ "success": true}
|
|
298
|
+
```
|
|
299
|
+
|
|
300
|
+
### Resposta de erro
|
|
301
|
+
|
|
302
|
+
[Consulte "Códigos de erro e solução de problemas da API de Ligações" para saber mais](/documentation/business-messaging/whatsapp/calling/troubleshooting)
|
|
303
|
+
|
|
304
|
+
[Veja os códigos de erro gerais da API de Nuvem neste link](/documentation/business-messaging/whatsapp/support/error-codes)
|
|
305
|
+
|
|
306
|
+
## Como obter as configurações de ligação do número de telefone (SIP)
|
|
307
|
+
|
|
308
|
+
Use este ponto de extremidade para verificar a configuração dos recursos da API de Ligações, incluindo valores SIP.
|
|
309
|
+
|
|
310
|
+
Esse ponto de extremidade pode retornar informações sobre as configurações de outros recursos da API de Nuvem.
|
|
311
|
+
|
|
312
|
+
### Sintaxe da solicitação
|
|
313
|
+
|
|
314
|
+
```
|
|
315
|
+
GET /<PHONE_NUMBER_ID>/settings
|
|
316
|
+
```
|
|
317
|
+
|
|
318
|
+
### Parâmetros do ponto de extremidade
|
|
319
|
+
|
|
320
|
+
|
|
321
|
+
|
|
322
|
+
Espaço reservado
|
|
323
|
+
|
|
324
|
+
Descrição
|
|
325
|
+
|
|
326
|
+
Exemplo de valor
|
|
327
|
+
|
|
328
|
+
`<PHONE_NUMBER_ID>`
|
|
329
|
+
|
|
330
|
+
_Número inteiro_
|
|
331
|
+
|
|
332
|
+
**Obrigatório**
|
|
333
|
+
|
|
334
|
+
|
|
335
|
+
O número de telefone comercial para o qual você está atualizando as configurações da API de Ligações.
|
|
336
|
+
|
|
337
|
+
[Saiba mais sobre a formatação de números de telefone na API de Nuvem](/documentation/business-messaging/whatsapp/business-phone-numbers/phone-numbers)
|
|
338
|
+
|
|
339
|
+
`+12784358810`
|
|
340
|
+
|
|
341
|
+
#### Permissão do app necessária
|
|
342
|
+
|
|
343
|
+
`whatsapp_business_management`: é necessário ter acesso avançado para atualizar o uso da API para clientes empresariais finais
|
|
344
|
+
|
|
345
|
+
### Corpo da resposta
|
|
346
|
+
|
|
347
|
+
```
|
|
348
|
+
{
|
|
349
|
+
"calling": {
|
|
350
|
+
"status": "ENABLED",
|
|
351
|
+
"call_icon_visibility": "DEFAULT",
|
|
352
|
+
"callback_permission_status": "ENABLED",
|
|
353
|
+
"sip": {
|
|
354
|
+
"status": "ENABLED",
|
|
355
|
+
"servers": [
|
|
356
|
+
{
|
|
357
|
+
"app_id": <APP_ID_THAT_CONFIGURED_THIS_SIP_SERVER>,
|
|
358
|
+
"hostname": "sip.example.com"
|
|
359
|
+
}
|
|
360
|
+
]
|
|
361
|
+
}
|
|
362
|
+
}
|
|
363
|
+
}
|
|
364
|
+
```
|
|
365
|
+
|
|
366
|
+
### Incluir senha de usuário do SIP
|
|
367
|
+
|
|
368
|
+
Como opção, você pode incluir credenciais de usuário do SIP no corpo da resposta, basta adicionar o parâmetro de consulta de credenciais do SIP na solicitação POST:
|
|
369
|
+
|
|
370
|
+
```
|
|
371
|
+
GET /<PHONE_NUMBER_ID>/settings?include_sip_credentials=true
|
|
372
|
+
```
|
|
373
|
+
|
|
374
|
+
A resposta será semelhante a esta:
|
|
375
|
+
|
|
376
|
+
```
|
|
377
|
+
{
|
|
378
|
+
"calling": {
|
|
379
|
+
"status": "ENABLED",
|
|
380
|
+
"call_icon_visibility": "DEFAULT",
|
|
381
|
+
"callback_permission_status": "ENABLED",
|
|
382
|
+
"sip": {
|
|
383
|
+
"status": "ENABLED",
|
|
384
|
+
"servers": [
|
|
385
|
+
{
|
|
386
|
+
"app_id": <APP_ID_THAT_CONFIGURED_THIS_SIP_SERVER>,
|
|
387
|
+
"hostname": "sip.example.com",
|
|
388
|
+
"sip_user_password": "{SIP_USER_PASSWORD}"
|
|
389
|
+
}
|
|
390
|
+
]
|
|
391
|
+
}
|
|
392
|
+
}
|
|
393
|
+
}
|
|
394
|
+
```
|
|
395
|
+
|
|
396
|
+
### Resposta de erro
|
|
397
|
+
|
|
398
|
+
[Consulte "Códigos de erro e solução de problemas da API de Ligações" para saber mais](/documentation/business-messaging/whatsapp/calling/troubleshooting)
|
|
399
|
+
|
|
400
|
+
[Veja os códigos de erro gerais da API de Nuvem neste link](/documentation/business-messaging/whatsapp/support/error-codes)
|
|
401
|
+
|
|
402
|
+
## Redefinir senha do SIP
|
|
403
|
+
|
|
404
|
+
Para que a Meta gere uma nova senha do SIP, você precisará desabilitar o SIP, excluir o servidor SIP e adicioná-lo novamente.
|
|
405
|
+
|
|
406
|
+
- [Obtenha sua configuração de SIP com senha](/documentation/business-messaging/whatsapp/calling/sip#include-sip-user-password) para ver a senha atual e usar como referência- Desabilitar e excluir o servidor SIP
|
|
407
|
+
|
|
408
|
+
```
|
|
409
|
+
curl -X POST \https://graph.facebook.com/{VERSION}/{PHONE_NUMBER_ID}/settings \-H 'Authorization: Bearer {TOKEN}' \-H 'Content-Type: application/json' \-d '{ "calling": { "status": "DISABLED", "sip": { "status": "DISABLED", "servers": [], } }}'{"success":true}
|
|
410
|
+
```
|
|
411
|
+
|
|
412
|
+
- Habilite o SIP e adicione o servidor
|
|
413
|
+
|
|
414
|
+
```
|
|
415
|
+
curl -X POST \https://graph.facebook.com/{VERSION}/{PHONE_NUMBER_ID}/settings \-H 'Authorization: Bearer {TOKEN}' \-H 'Content-Type: application/json' \-d '{ "calling": { "status": "ENABLED", "sip": { "status": "ENABLED", "servers": [{"hostname":"sip.example.com"}], } }}'{"success":true}
|
|
416
|
+
```
|
|
417
|
+
|
|
418
|
+
- [Acesse sua configuração de SIP com senha](/documentation/business-messaging/whatsapp/calling/sip#include-sip-user-password) para ver a nova senha
|
|
419
|
+
|
|
420
|
+
## Exemplo de solicitações de SIP
|
|
421
|
+
|
|
422
|
+
### Ligações iniciadas pela empresa (com mídia WebRTC)
|
|
423
|
+
|
|
424
|
+
#### Solicitação inicial de SIP INVITE
|
|
425
|
+
|
|
426
|
+
```
|
|
427
|
+
INVITE sip:+12195550714@wa.meta.vc;transport=tls SIP/2.0
|
|
428
|
+
Record-Route: <sip:+159.65.244.171:5061;transport=tls;lr;ftag=Kc9QZg4496maQ;nat=yes>
|
|
429
|
+
Via: SIP/2.0/TLS 159.65.244.171:5061;received=2803:6081:798c:93f8:5f9b:bfe8:300:0;branch=z9hG4bK0da2.36614b8977461b486ceabc004c723476.0;i=617261
|
|
430
|
+
Via: SIP/2.0/TLS 137.184.87.1:35181;rport=56533;received=137.184.87.1;branch=z9hG4bKQNa6meey5Dj2g
|
|
431
|
+
Max-Forwards: 69
|
|
432
|
+
From: <sip:+17125550259@meta-voip.example.com>;tag=Kc9QZg4496maQ
|
|
433
|
+
To: <sip:+12195550714@wa.meta.vc>
|
|
434
|
+
Call-ID: dc2c5b33-1b81-43ee-9213-afb56f4e56ba
|
|
435
|
+
CSeq: 96743476 INVITE
|
|
436
|
+
Contact: <sip:mod_sofia@137.184.87.1:35181;transport=tls;swrad=137.184.87.1~56533~3>
|
|
437
|
+
User-Agent: SignalWire
|
|
438
|
+
Allow: INVITE, ACK, BYE, CANCEL, OPTIONS, MESSAGE, INFO, UPDATE, REGISTER, REFER, NOTIFY
|
|
439
|
+
Supported: timer, path, replaces
|
|
440
|
+
Allow-Events: talk, hold, conference, refer
|
|
441
|
+
Session-Expires: 600;refresher=uac
|
|
442
|
+
Min-SE: 90
|
|
443
|
+
Content-Type: application/sdp
|
|
444
|
+
Content-Disposition: session
|
|
445
|
+
Content-Length: 2427
|
|
446
|
+
X-Relay-Call-ID: dc2c5b33-1b81-43ee-9213-afb56f4e56ba
|
|
447
|
+
Remote-Party-ID: <sip:+17125550259@meta-voip.example.com>;party=calling;screen=yes;privacy=off
|
|
448
|
+
Content-Type: application/sdp
|
|
449
|
+
Content-Length: 2427
|
|
450
|
+
|
|
451
|
+
<<SDP omitted for brevity>>
|
|
452
|
+
```
|
|
453
|
+
|
|
454
|
+
#### Resposta 407 da Meta
|
|
455
|
+
|
|
456
|
+
```
|
|
457
|
+
SIP/2.0 407 Proxy Authentication Required
|
|
458
|
+
Via: SIP/2.0/TLS 159.65.244.171:5061;received=2803:6081:798c:93f8:5f9b:bfe8:300:0;branch=z9hG4bK0da2.36614b8977461b486ceabc004c723476.0;i=617261
|
|
459
|
+
Via: SIP/2.0/TLS 137.184.87.1:35181;rport=56533;received=137.184.87.1;branch=z9hG4bKQNa6meey5Dj2g
|
|
460
|
+
Record-Route: <sip:+159.65.244.171:5061;transport=tls;lr;ftag=Kc9QZg4496maQ;nat=yes>
|
|
461
|
+
Call-ID: dc2c5b33-1b81-43ee-9213-afb56f4e56ba
|
|
462
|
+
From: <sip:+17125550259@meta-voip.example.com>;tag=Kc9QZg4496maQ
|
|
463
|
+
To: <sip:+12195550714@wa.meta.vc>;tag=z9hG4bK0da2.36614b8977461b486ceabc004c723476.0
|
|
464
|
+
CSeq: 96743476 INVITE
|
|
465
|
+
Proxy-Authenticate: Digest realm="wa.meta.vc",nonce="419ac2415577f8e1",opaque="440badfc05072367",algorithm=MD5,qop="auth"
|
|
466
|
+
```
|
|
467
|
+
|
|
468
|
+
#### Segundo envio de SIP INVITE com autorização
|
|
469
|
+
|
|
470
|
+
```
|
|
471
|
+
INVITE sip:+12195550714@wa.meta.vc;transport=tls SIP/2.0
|
|
472
|
+
Record-Route: <sip:+159.65.244.171:5061;transport=tls;lr;ftag=Kc9QZg4496maQ;nat=yes>
|
|
473
|
+
Via: SIP/2.0/TLS 159.65.244.171:5061;received=2803:6081:798c:93f8:5f9b:bfe8:300:0;branch=z9hG4bK1da2.ed8900012befced853927008d619d374.0;i=617261
|
|
474
|
+
Via: SIP/2.0/TLS 137.184.87.1:35181;rport=56533;received=137.184.87.1;branch=z9hG4bKry3yp9y12p8mc
|
|
475
|
+
Max-Forwards: 69
|
|
476
|
+
From: <sip:+17125550259@meta-voip.example.com>;tag=Kc9QZg4496maQ
|
|
477
|
+
To: <sip:+12195550714@wa.meta.vc>
|
|
478
|
+
Call-ID: dc2c5b33-1b81-43ee-9213-afb56f4e56ba
|
|
479
|
+
CSeq: 96743477 INVITE
|
|
480
|
+
Contact: <sip:mod_sofia@137.184.87.1:35181;transport=tls;swrad=137.184.87.1~56533~3>
|
|
481
|
+
User-Agent: SignalWire
|
|
482
|
+
Allow: INVITE, ACK, BYE, CANCEL, OPTIONS, MESSAGE, INFO, UPDATE, REGISTER, REFER, NOTIFY
|
|
483
|
+
Supported: timer, path, replaces
|
|
484
|
+
Allow-Events: talk, hold, conference, refer
|
|
485
|
+
Proxy-Authorization: Digest username="17125550259", realm="wa.meta.vc", nonce="419ac2415577f8e1", uri="sip:+12195550714@wa.meta.vc;transport=tls", response="blah", algorithm=MD5, cnonce="/mVZtYFCEj65YQJCrBEAAg", opaque="440badfc05072367", qop=auth, nc=00000001
|
|
486
|
+
Session-Expires: 600;refresher=uac
|
|
487
|
+
Min-SE: 90
|
|
488
|
+
Content-Type: application/sdp
|
|
489
|
+
Content-Disposition: session
|
|
490
|
+
Content-Length: 2427
|
|
491
|
+
X-Relay-Call-ID: dc2c5b33-1b81-43ee-9213-afb56f4e56ba
|
|
492
|
+
Remote-Party-ID: <sip:+17125550259@meta-voip.example.com>;party=calling;screen=yes;privacy=off
|
|
493
|
+
Content-Type: application/sdp
|
|
494
|
+
Content-Length: 2427
|
|
495
|
+
<<SDP omitted for brevity>>
|
|
496
|
+
```
|
|
497
|
+
|
|
498
|
+
#### Exemplo de resposta de erro
|
|
499
|
+
|
|
500
|
+
```
|
|
501
|
+
SIP/2.0 403 SIP server wa.meta.vc from INVITE does not match any SIP server configured for phone number id {ID}
|
|
502
|
+
Via: SIP/2.0/TLS [2803:6080:c954:b533:ecfb:5cec:300:0]:39459;rport=39459;received=2803:6080:c954:b533:ecfb:5cec:300:0;branch=z9hG4bKPjf9f3d0bddb3dbe0c9b1e3b486f39784a;alias
|
|
503
|
+
Via: SIP/2.0/TLS 148.72.155.236:5061;rport=30498;received=2803:6080:d014:8e40:ddbb:4ed7:300:0;branch=z9hG4bKPjfd270ec8-7aaf-4a65-b290-4bef3b50b7b7;alias
|
|
504
|
+
Record-Route: <sip:onevc-sip-proxy-dev.fbinfra.net:8191;transport=tls;lr>
|
|
505
|
+
Record-Route: <sip:wa.meta.vc;transport=tls;lr>
|
|
506
|
+
Call-ID: 91578781-44f1-4268-9a7f-d7efec1abf72
|
|
507
|
+
From: <sip:+17125550259@wa.meta.vc>;tag=3a63b370-a697-4a5a-82b4-e8105e23f176
|
|
508
|
+
To: <sip:+12195550714@wa.meta.vc>;tag=e0d30a05-657b-47ec-a668-e05ca79f9f05
|
|
509
|
+
CSeq: 15659 INVITE
|
|
510
|
+
Allow: INVITE, ACK, BYE, CANCEL, NOTIFY, OPTIONS
|
|
511
|
+
X-FB-External-Domain: wa.meta.vc
|
|
512
|
+
Warning: 399 wa.meta.vc "SIP server wa.meta.vc from INVITE does not match any SIP server configured for phone number id {ID}"
|
|
513
|
+
Content-Length: 0
|
|
514
|
+
Content-Length: 0
|
|
515
|
+
```
|
|
516
|
+
|
|
517
|
+
#### SIP BYE
|
|
518
|
+
|
|
519
|
+
```
|
|
520
|
+
BYE sip:+5559800000693@wa.meta.vc;transport=tls;ob SIP/2.0
|
|
521
|
+
Via: SIP/2.0/TLS 137.184.4.155:5061;received=2803:6080:c074:cac:10ed:4b05:400:0;i=8d2dc2
|
|
522
|
+
Via: SIP/2.0/TLS 143.198.136.243:35181;rport=38087;received=143.198.136.243
|
|
523
|
+
Route: <sip:wa.meta.vc;transport=tls;lr>
|
|
524
|
+
Route: <sip:onevc-sip-proxy.fbinfra.net:8191;transport=tls;lr>
|
|
525
|
+
Max-Forwards: 69
|
|
526
|
+
From: <sip:+12145551869@meta-voip.example.com>;tag=NcKQ6mtDKSDQB
|
|
527
|
+
To: "5559800000693" <sip:+5559800000693@wa.meta.vc>;tag=92a01092-ee78-4870-865f-bc176203a6bd
|
|
528
|
+
Call-ID: outgoing:wacid.HBgPMjAwNzU2OTA0ODY5OTY1FRIAEhggMjQ4QzUwOUQ1REQ0NDUwNENEQzRFMTgwRTNGQjAwNjEcGAsxMjE0NTU1MTg2ORUCAAA
|
|
529
|
+
CSeq: 98734935 BYE
|
|
530
|
+
User-Agent: SignalWire
|
|
531
|
+
Allow: INVITE, ACK, BYE, CANCEL, OPTIONS, MESSAGE, INFO, UPDATE, REGISTER, REFER, NOTIFY
|
|
532
|
+
Supported: timer, path, replaces
|
|
533
|
+
Reason: Q.850;cause=16;text="NORMAL_CLEARING"
|
|
534
|
+
Content-Length: 0
|
|
535
|
+
X-Relay-Call-ID: b72c0c65-e319-41b3-afb7-19ebcca05d38
|
|
536
|
+
Content-Length: 0
|
|
537
|
+
```
|
|
538
|
+
|
|
539
|
+
#### SIP INVITE (com SDES)
|
|
540
|
+
|
|
541
|
+
```
|
|
542
|
+
INVITE sip:+12195550714@wa.meta.vc;transport=tls SIP/2.0
|
|
543
|
+
Record-Route: <sip:54.172.60.1:5061;transport=tls;lr;r2=on>
|
|
544
|
+
Record-Route: <sip:54.172.60.1;lr;r2=on>
|
|
545
|
+
CSeq: 2 INVITE
|
|
546
|
+
From: "12145551869" <sip:+12145551869@meta-voip.example.com>;tag=28460006_c3356d0b_5cdada8c-cbf0-4369-b02d-cc97d3c36f2b
|
|
547
|
+
To: <sip:+12195550714@wa.meta.vc>
|
|
548
|
+
Max-Forwards: 66
|
|
549
|
+
P-Asserted-Identity: <sip:+12145551869@meta-voip.example.com>
|
|
550
|
+
Min-SE: 120
|
|
551
|
+
Call-ID: f304a1d2cafb8139c1f9ff93a7733586@0.0.0.0
|
|
552
|
+
Contact: "12145551869" <sip:+12145551869@172.25.10.217:5060;transport=udp>
|
|
553
|
+
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, NOTIFY
|
|
554
|
+
Via: SIP/2.0/TLS 54.172.60.1:5061;received=2803:6080:f934:8894:7eb5:24f9:300:0;branch=z9hG4bK1e5a.0da2ace9cc912d9e5f2595ca4acb9847.0
|
|
555
|
+
Via: SIP/2.0/UDP 172.25.10.217:5060;rport=5060;branch=z9hG4bK5cdada8c-cbf0-4369-b02d-cc97d3c36f2b_c3356d0b_54-457463274351249162
|
|
556
|
+
Supported: timer
|
|
557
|
+
User-Agent: Twilio Gateway
|
|
558
|
+
Proxy-Authorization: Digest username="12145551869", realm="wa.meta.vc", nonce="2a487cb01d4ed43b", uri="sip:+12195550714@wa.meta.vc;transport=tls", response="3f58df7af575b948625aeffd51bf9060", algorithm=MD5, cnonce="b338deb7f0e004e66353e26d34ad62b7", opaque="725a06fb2cd89a32", qop=auth, nc=00000002
|
|
559
|
+
Content-Type: application/sdp
|
|
560
|
+
X-Twilio-CallSid: CA93eac6be615da5e6836c7059e9555348
|
|
561
|
+
Content-Length: 422
|
|
562
|
+
Content-Type: application/sdp
|
|
563
|
+
Content-Length: 422
|
|
564
|
+
|
|
565
|
+
v=0
|
|
566
|
+
o=root 1185414872 1185414872 IN IP4 172.18.155.180
|
|
567
|
+
s=Twilio Media Gateway
|
|
568
|
+
c=IN IP4 168.86.138.232
|
|
569
|
+
t=0 0
|
|
570
|
+
m=audio 19534 RTP/SAVP 107 0 8 101
|
|
571
|
+
a=crypto:**************************************************************************
|
|
572
|
+
a=rtpmap:0 PCMU/8000
|
|
573
|
+
a=rtpmap:107 opus/48000/2
|
|
574
|
+
a=fmtp:107 useinbandfec=1
|
|
575
|
+
a=rtpmap:8 PCMA/8000
|
|
576
|
+
a=rtpmap:101 telephone-event/8000
|
|
577
|
+
a=fmtp:101 0-16
|
|
578
|
+
a=ptime:20
|
|
579
|
+
a=maxptime:20
|
|
580
|
+
a=sendrecv
|
|
581
|
+
```
|
|
582
|
+
|
|
583
|
+
#### SIP OK (com SDES)
|
|
584
|
+
|
|
585
|
+
```
|
|
586
|
+
SIP/2.0 200 OK
|
|
587
|
+
Via: SIP/2.0/TLS 54.172.60.1:5061;received=2803:6080:f934:8894:7eb5:24f9:300:0;branch=z9hG4bK1e5a.0da2ace9cc912d9e5f2595ca4acb9847.0
|
|
588
|
+
Via: SIP/2.0/UDP 172.25.10.217:5060;rport=5060;branch=z9hG4bK5cdada8c-cbf0-4369-b02d-cc97d3c36f2b_c3356d0b_54-457463274351249162
|
|
589
|
+
Record-Route: <sip:onevc-sip-proxy.fbinfra.net:8191;transport=tls;lr>
|
|
590
|
+
Record-Route: <sip:wa.meta.vc;transport=tls;lr>
|
|
591
|
+
Record-Route: <sip:54.172.60.1:5061;transport=tls;lr;r2=on>
|
|
592
|
+
Record-Route: <sip:54.172.60.1;lr;r2=on>
|
|
593
|
+
Call-ID: f304a1d2cafb8139c1f9ff93a7733586@0.0.0.0
|
|
594
|
+
From: "12145551869" <sip:+12145551869@meta-voip.example.com>;tag=28460006_c3356d0b_5cdada8c-cbf0-4369-b02d-cc97d3c36f2b
|
|
595
|
+
To: <sip:+12195550714@wa.meta.vc>;tag=0d185053-2615-46c7-8ff2-250bda494cf1
|
|
596
|
+
CSeq: 2 INVITE
|
|
597
|
+
Allow: INVITE, ACK, BYE, CANCEL, NOTIFY, OPTIONS
|
|
598
|
+
Supported: timer
|
|
599
|
+
X-FB-External-Domain: wa.meta.vc
|
|
600
|
+
Contact: <sip:+12195550714@wa.meta.vc;transport=tls;ob;X-FB-Sip-Smc-Tier=collaboration.sip_gateway.sip.prod>;isfocus
|
|
601
|
+
Content-Type: application/sdp
|
|
602
|
+
Content-Length: 645
|
|
603
|
+
|
|
604
|
+
v=0
|
|
605
|
+
o=- 1746657286595 2 IN IP4 127.0.0.1
|
|
606
|
+
s=-
|
|
607
|
+
t=0 0
|
|
608
|
+
a=group:BUNDLE audio
|
|
609
|
+
a=msid-semantic: WMS 42da9643-cb50-4eca-95d3-ca41b3f1f4bb
|
|
610
|
+
m=audio 3480 RTP/SAVP 107 101
|
|
611
|
+
c=IN IP4 157.240.19.130
|
|
612
|
+
a=rtcp:9 IN IP4 0.0.0.0
|
|
613
|
+
a=mid:audio
|
|
614
|
+
a=sendrecv
|
|
615
|
+
a=msid:42da9643-cb50-4eca-95d3-ca41b3f1f4bb WhatsAppTrack1
|
|
616
|
+
a=rtcp-mux
|
|
617
|
+
a=crypto:**************************************************************************
|
|
618
|
+
a=rtpmap:107 opus/48000/2
|
|
619
|
+
a=fmtp:107 maxaveragebitrate=20000;maxplaybackrate=16000;minptime=20;sprop-maxcapturerate=16000;useinbandfec=1
|
|
620
|
+
a=rtpmap:101 telephone-event/8000
|
|
621
|
+
a=maxptime:20
|
|
622
|
+
a=ptime:20
|
|
623
|
+
a=ssrc:1238967757 cname:WhatsAppAudioStream1
|
|
624
|
+
```
|
|
625
|
+
|
|
626
|
+
### Ligações iniciadas pelo usuário (com mídia do WebRTC)
|
|
627
|
+
|
|
628
|
+
#### SIP INVITE
|
|
629
|
+
|
|
630
|
+
```
|
|
631
|
+
INVITE sip:+17015558857@meta-voip.example.com;transport=tls SIP/2.0
|
|
632
|
+
Via: SIP/2.0/TLS [2803:6080:e888:51aa:d4a4:c5e0:300:0]:33819;rport=33819;received=2803:6080:e888:51aa:d4a4:c5e0:300:0;branch=z9hG4bKPjNvs.IZBnUa1W4l8oHPpk3SUMmcx3MMcE;alias
|
|
633
|
+
Max-Forwards: 70
|
|
634
|
+
From: "12195550714" <sip:+12195550714@wa.meta.vc>;tag=bbf1ad6e-79bb-4d9c-8a2c-094168a10bea
|
|
635
|
+
To: <sip:+17015558857@meta-voip.example.com>
|
|
636
|
+
Contact: <sip:+12195550714@wa.meta.vc;transport=tls;ob>;isfocus
|
|
637
|
+
Call-ID: outgoing:wacid.HBgLMTIxOTU1NTA3MTQVAgASGCAzODg1NTE5NEU1NTBEMTc1RTFFQUY5NjNCQ0FCRkEzRhwYCzE3MDE1NTU4ODU3FQIAAA==
|
|
638
|
+
CSeq: 2824 INVITE
|
|
639
|
+
Route: <sip:onevc-sip-proxy-dev.fbinfra.net:8191;transport=tls;lr>
|
|
640
|
+
X-FB-External-Domain: wa.meta.vc
|
|
641
|
+
Allow: INVITE, ACK, BYE, CANCEL, NOTIFY, OPTIONS
|
|
642
|
+
User-Agent: Facebook SipGateway
|
|
643
|
+
Content-Type: application/sdp
|
|
644
|
+
Content-Length: 1028
|
|
645
|
+
|
|
646
|
+
v=0
|
|
647
|
+
o=- 1741113186367 2 IN IP4 127.0.0.1
|
|
648
|
+
s=-
|
|
649
|
+
t=0 0
|
|
650
|
+
a=group:BUNDLE audio
|
|
651
|
+
a=msid-semantic: WMS 632a909f-1060-4369-96a4-7bd03e291ee7
|
|
652
|
+
a=ice-lite
|
|
653
|
+
m=audio 3480 UDP/TLS/RTP/SAVPF 111 126
|
|
654
|
+
c=IN IP4 57.144.135.35
|
|
655
|
+
a=rtcp:9 IN IP4 0.0.0.0
|
|
656
|
+
a=candidate:1775469887 1 udp 2122260223 57.144.135.35 3480 typ host generation 0 network-cost 50
|
|
657
|
+
a=candidate:3355715111 1 udp 2122262783 2a03:2880:f343:131:face:b00c:0:699c 3480 typ host generation 0 network-cost 50
|
|
658
|
+
a=ice-ufrag:RmDDkfzkwbexPfbC
|
|
659
|
+
a=ice-pwd:*************************
|
|
660
|
+
a=fingerprint:********************************************************************************************************
|
|
661
|
+
a=setup:actpass
|
|
662
|
+
a=mid:audio
|
|
663
|
+
a=sendrecv
|
|
664
|
+
a=msid:632a909f-1060-4369-96a4-7bd03e291ee7 WhatsAppTrack1
|
|
665
|
+
a=rtcp-mux
|
|
666
|
+
a=rtpmap:111 opus/48000/2
|
|
667
|
+
a=rtcp-fb:111 transport-cc
|
|
668
|
+
a=fmtp:111 maxaveragebitrate=20000;maxplaybackrate=16000;minptime=20;sprop-maxcapturerate=16000;useinbandfec=1
|
|
669
|
+
a=rtpmap:126 telephone-event/8000
|
|
670
|
+
a=maxptime:20
|
|
671
|
+
a=ptime:20
|
|
672
|
+
a=ssrc:849255537 cname:WhatsAppAudioStream1
|
|
673
|
+
```
|
|
674
|
+
|
|
675
|
+
#### SIP BYE
|
|
676
|
+
|
|
677
|
+
```
|
|
678
|
+
BYE sip:+5559800000693@wa.meta.vc;transport=tls;ob SIP/2.0
|
|
679
|
+
Via: SIP/2.0/TLS 137.184.4.155:5061;received=2803:6080:c074:cac:10ed:4b05:400:0;i=8d2dc2
|
|
680
|
+
Via: SIP/2.0/TLS 143.198.136.243:35181;rport=38087;received=143.198.136.243
|
|
681
|
+
Route: <sip:wa.meta.vc;transport=tls;lr>
|
|
682
|
+
Route: <sip:onevc-sip-proxy.fbinfra.net:8191;transport=tls;lr>
|
|
683
|
+
Max-Forwards: 69
|
|
684
|
+
From: <sip:+12145551869@meta-voip.example.com>;tag=NcKQ6mtDKSDQB
|
|
685
|
+
To: "5559800000693" <sip:+5559800000693@wa.meta.vc>;tag=92a01092-ee78-4870-865f-bc176203a6bd
|
|
686
|
+
Call-ID: outgoing:wacid.HBgPMjAwNzU2OTA0ODY5OTY1FRIAEhggMjQ4QzUwOUQ1REQ0NDUwNENEQzRFMTgwRTNGQjAwNjEcGAsxMjE0NTU1MTg2ORUCAAA
|
|
687
|
+
CSeq: 98734935 BYE
|
|
688
|
+
User-Agent: SignalWire
|
|
689
|
+
Allow: INVITE, ACK, BYE, CANCEL, OPTIONS, MESSAGE, INFO, UPDATE, REGISTER, REFER, NOTIFY
|
|
690
|
+
Supported: timer, path, replaces
|
|
691
|
+
Reason: Q.850;cause=16;text="NORMAL_CLEARING"
|
|
692
|
+
Content-Length: 0
|
|
693
|
+
X-Relay-Call-ID: b72c0c65-e319-41b3-afb7-19ebcca05d38
|
|
694
|
+
Content-Length: 0
|
|
695
|
+
```
|
|
696
|
+
|
|
697
|
+
#### SIP INVITE (com SDES)
|
|
698
|
+
|
|
699
|
+
```
|
|
700
|
+
INVITE sip:+12145551869@meta-voip.example.com;transport=tls SIP/2.0
|
|
701
|
+
Via: SIP/2.0/TLS [2803:6080:f948:9597::]:57363;rport;branch=z9hG4bKPj3a9f2ad89e4a3df61408aa84f7d9a63e;alias
|
|
702
|
+
Record-Route: <sip:wa.meta.vc;transport=tls;lr>
|
|
703
|
+
Record-Route: <sip:onevc-sip-proxy.fbinfra.net:8191;transport=tls;lr>
|
|
704
|
+
Via: SIP/2.0/TLS [2803:6080:f948:9597:d33c:e00:400:0]:5061;branch=z9hG4bKPj3a9f2ad89e4a3df61408aa84f7d9a63e
|
|
705
|
+
Via: SIP/2.0/TLS [2803:6080:f948:9597:1ac5:cdf8:300:0]:63057;rport=63057;received=2803:6080:f948:9597:1ac5:cdf8:300:0;branch=z9hG4bKPj-phic0sbns27DiP0OlrxRxgLtNg4mio7;alias
|
|
706
|
+
Max-Forwards: 69
|
|
707
|
+
From: "12195550714" <sip:+12195550714@wa.meta.vc>;tag=8a0f7e65-6e9e-4801-bf92-85c3ef2485d9
|
|
708
|
+
To: <sip:+12145551869@meta-voip.example.com>
|
|
709
|
+
Contact: <sip:+12195550714@wa.meta.vc;transport=tls;ob>;isfocus
|
|
710
|
+
Call-ID: outgoing:wacid.HBgLMTIxOTU1NTA3MTQVAgASGCA4QkY1MTJCQkNFNTgxMEVFRERFRTUzNTFERkE1MDU0MhwYCzEyMTQ1NTUxODY5FQIAAA
|
|
711
|
+
CSeq: 31159 INVITE
|
|
712
|
+
X-FB-External-Domain: wa.meta.vc
|
|
713
|
+
Allow: INVITE, ACK, BYE, CANCEL, NOTIFY, OPTIONS
|
|
714
|
+
User-Agent: Facebook SipGateway
|
|
715
|
+
Content-Type: application/sdp
|
|
716
|
+
Content-Length: 645
|
|
717
|
+
|
|
718
|
+
v=0
|
|
719
|
+
o=- 1746659966980 2 IN IP4 127.0.0.1
|
|
720
|
+
s=-
|
|
721
|
+
t=0 0
|
|
722
|
+
a=group:BUNDLE audio
|
|
723
|
+
a=msid-semantic: WMS 07092115-d151-427e-8722-26c70936b104
|
|
724
|
+
m=audio 3480 RTP/SAVP 111 126
|
|
725
|
+
c=IN IP4 157.240.19.130
|
|
726
|
+
a=rtcp:9 IN IP4 0.0.0.0
|
|
727
|
+
a=mid:audio
|
|
728
|
+
a=sendrecv
|
|
729
|
+
a=msid:07092115-d151-427e-8722-26c70936b104 WhatsAppTrack1
|
|
730
|
+
a=rtcp-mux
|
|
731
|
+
a=crypto:**************************************************************************
|
|
732
|
+
a=rtpmap:111 opus/48000/2
|
|
733
|
+
a=fmtp:111 maxaveragebitrate=20000;maxplaybackrate=16000;minptime=20;sprop-maxcapturerate=16000;useinbandfec=1
|
|
734
|
+
a=rtpmap:126 telephone-event/8000
|
|
735
|
+
a=maxptime:20
|
|
736
|
+
a=ptime:20
|
|
737
|
+
a=ssrc:1615009994 cname:WhatsAppAudioStream1
|
|
738
|
+
```
|
|
739
|
+
|
|
740
|
+
#### SIP OK (com SDES)
|
|
741
|
+
|
|
742
|
+
```
|
|
743
|
+
SIP/2.0 200 OK
|
|
744
|
+
CSeq: 31159 INVITE
|
|
745
|
+
Call-ID: outgoing:wacid.HBgLMTIxOTU1NTA3MTQVAgASGCA4QkY1MTJCQkNFNTgxMEVFRERFRTUzNTFERkE1MDU0MhwYCzEyMTQ1NTUxODY5FQIAAA
|
|
746
|
+
From: "12195550714" <sip:+12195550714@wa.meta.vc>;tag=8a0f7e65-6e9e-4801-bf92-85c3ef2485d9
|
|
747
|
+
To: <sip:+12145551869@meta-voip.example.com>;tag=66596922_c3356d0b_fee164be-566a-4679-a80d-5bfdf1d0aa9e
|
|
748
|
+
Via: SIP/2.0/TLS 157.240.229.209:5061;rport=51830;received=69.171.251.115;branch=z9hG4bKPj3a9f2ad89e4a3df61408aa84f7d9a63e;alias
|
|
749
|
+
Via: SIP/2.0/TLS [2803:6080:f948:9597:d33c:e00:400:0]:5061;branch=z9hG4bKPj3a9f2ad89e4a3df61408aa84f7d9a63e
|
|
750
|
+
Via: SIP/2.0/TLS [2803:6080:f948:9597:1ac5:cdf8:300:0]:63057;rport=63057;received=2803:6080:f948:9597:1ac5:cdf8:300:0;branch=z9hG4bKPj-phic0sbns27DiP0OlrxRxgLtNg4mio7;alias
|
|
751
|
+
Record-Route: <sip:54.172.60.1:5060;lr;r2=on;twnat=sip:69.171.251.115:51830>
|
|
752
|
+
Record-Route: <sip:54.172.60.1:5061;transport=tls;lr;r2=on;twnat=sip:69.171.251.115:51830>
|
|
753
|
+
Record-Route: <sip:wa.meta.vc;transport=tls;lr>
|
|
754
|
+
Record-Route: <sip:onevc-sip-proxy.fbinfra.net:8191;transport=tls;lr>
|
|
755
|
+
Server: Twilio
|
|
756
|
+
Contact: <sip:+172.25.16.223:5060>
|
|
757
|
+
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, NOTIFY
|
|
758
|
+
Content-Type: application/sdp
|
|
759
|
+
X-Twilio-CallSid: CAb0d74508fe5fcdf6ec70ea3cf4e9b90b
|
|
760
|
+
Content-Length: 446
|
|
761
|
+
Content-Type: application/sdp
|
|
762
|
+
Content-Length: 446
|
|
763
|
+
|
|
764
|
+
v=0
|
|
765
|
+
o=root 1353670385 1353670385 IN IP4 172.18.164.24
|
|
766
|
+
s=Twilio Media Gateway
|
|
767
|
+
c=IN IP4 168.86.138.176
|
|
768
|
+
t=0 0
|
|
769
|
+
m=audio 15822 RTP/SAVP 111 126
|
|
770
|
+
a=rtpmap:111 opus/48000/2
|
|
771
|
+
a=fmtp:111 maxplaybackrate=16000;sprop-maxcapturerate=16000;maxaveragebitrate=20000;useinbandfec=1
|
|
772
|
+
a=rtpmap:126 telephone-event/8000
|
|
773
|
+
a=fmtp:126 0-16
|
|
774
|
+
a=crypto:**************************************************************************
|
|
775
|
+
a=ptime:20
|
|
776
|
+
a=maxptime:20
|
|
777
|
+
a=sendrecv
|
|
778
|
+
```
|
|
779
|
+
|
|
780
|
+
### Ligações iniciadas pelo usuário com autenticação por resumo (com mídia SDES)
|
|
781
|
+
|
|
782
|
+
O servidor SIP da Meta oferece suporte à autenticação por resumo para ligações iniciadas pelo usuário. Seu servidor SIP deve responder com um desafio de autenticação por resumo. Depois, a Meta reenvia o convite com a resposta ao desafio. O nome de usuário usado para a autenticação de digestão é o número de telefone comercial (normalizado). A senha é gerada pela Meta e pode ser recuperada usando o [ponto de extremidade get Call settings](/documentation/business-messaging/whatsapp/calling/sip#include-sip-user-password).
|
|
783
|
+
|
|
784
|
+
#### Primeira solicitação INVITE da Meta
|
|
785
|
+
|
|
786
|
+
```
|
|
787
|
+
INVITE sip:+12145551869@meta-voip.example.com;transport=tls SIP/2.0
|
|
788
|
+
Via: SIP/2.0/TLS [2803:6080:f948:9597::]:47237;rport;branch=z9hG4bKPj1e6c665db16b3ecacf32cadb4497fe77;alias
|
|
789
|
+
Record-Route: <sip:wa.meta.vc;transport=tls;lr>
|
|
790
|
+
Record-Route: <sip:onevc-sip-proxy.fbinfra.net:8191;transport=tls;lr>
|
|
791
|
+
Via: SIP/2.0/TLS [2803:6080:f948:9597:7253:922a:400:0]:5061;branch=z9hG4bKPj1e6c665db16b3ecacf32cadb4497fe77
|
|
792
|
+
Via: SIP/2.0/TLS [2803:6080:f8bc:9272:e488:9927:400:0]:58279;rport=58279;received=2803:6080:f8bc:9272:e488:9927:400:0;branch=z9hG4bKPjr33j97A1mx5J8HWHEy2zIgqZYCCIb4Fb;alias
|
|
793
|
+
Max-Forwards: 69
|
|
794
|
+
From: "12195550714" <sip:+12195550714@wa.meta.vc>;tag=ece2da15-39e7-4983-ac65-e312f325d94a
|
|
795
|
+
To: <sip:+12145551869@meta-voip.example.com>
|
|
796
|
+
Contact: <sip:+12195550714@wa.meta.vc;transport=tls;ob>;isfocus
|
|
797
|
+
Call-ID: outgoing:wacid.HBgLMTIxOTU1NTA3MTQVAgASGCA2MUI2QUY0MDRCMTUyOTM4QkE5ODEwN0ZGQTAwODkxORwYCzEyMTQ1NTUxODY5FQIAFRoA
|
|
798
|
+
CSeq: 9989 INVITE
|
|
799
|
+
X-FB-External-Domain: wa.meta.vc
|
|
800
|
+
Allow: INVITE, ACK, BYE, CANCEL, NOTIFY, OPTIONS
|
|
801
|
+
User-Agent: Facebook SipGateway
|
|
802
|
+
Content-Type: application/sdp
|
|
803
|
+
Content-Length: 643
|
|
804
|
+
|
|
805
|
+
v=0
|
|
806
|
+
o=- 1750716867913 2 IN IP4 127.0.0.1
|
|
807
|
+
s=-
|
|
808
|
+
t=0 0
|
|
809
|
+
a=group:BUNDLE audio
|
|
810
|
+
a=msid-semantic: WMS 4e37b099-8aef-45d0-be4f-1cde2ca5a37d
|
|
811
|
+
m=audio 3480 RTP/SAVP 111 126
|
|
812
|
+
c=IN IP4 57.144.219.49
|
|
813
|
+
a=rtcp:9 IN IP4 0.0.0.0
|
|
814
|
+
a=mid:audio
|
|
815
|
+
a=sendrecv
|
|
816
|
+
a=msid:4e37b099-8aef-45d0-be4f-1cde2ca5a37d WhatsAppTrack1
|
|
817
|
+
a=rtcp-mux
|
|
818
|
+
a=crypto:**************************************************************************
|
|
819
|
+
a=rtpmap:111 opus/48000/2
|
|
820
|
+
a=fmtp:111 maxaveragebitrate=20000;maxplaybackrate=16000;minptime=20;sprop-maxcapturerate=16000;useinbandfec=1
|
|
821
|
+
a=rtpmap:126 telephone-event/8000
|
|
822
|
+
a=maxptime:20
|
|
823
|
+
a=ptime:20
|
|
824
|
+
a=ssrc:215879358 cname:WhatsAppAudioStream1
|
|
825
|
+
```
|
|
826
|
+
|
|
827
|
+
#### Resposta 407 do servidor SIP parceiro
|
|
828
|
+
|
|
829
|
+
```
|
|
830
|
+
SIP/2.0 407 Proxy Authentication required
|
|
831
|
+
CSeq: 9989 INVITE
|
|
832
|
+
Call-ID: outgoing:wacid.HBgLMTIxOTU1NTA3MTQVAgASGCA2MUI2QUY0MDRCMTUyOTM4QkE5ODEwN0ZGQTAwODkxORwYCzEyMTQ1NTUxODY5FQIAFRoA
|
|
833
|
+
From: "12195550714" <sip:+12195550714@wa.meta.vc>;tag=ece2da15-39e7-4983-ac65-e312f325d94a
|
|
834
|
+
To: <sip:+12145551869@meta-voip.example.com>;tag=45065608_c3356d0b_16001fd8-76d2-45f0-bb35-e0441d6dc4a2
|
|
835
|
+
Via: SIP/2.0/TLS 31.13.66.215:5061;rport=62080;received=69.171.251.112;branch=z9hG4bKPj1e6c665db16b3ecacf32cadb4497fe77;alias
|
|
836
|
+
Via: SIP/2.0/TLS [2803:6080:f948:9597:7253:922a:400:0]:5061;branch=z9hG4bKPj1e6c665db16b3ecacf32cadb4497fe77
|
|
837
|
+
Via: SIP/2.0/TLS [2803:6080:f8bc:9272:e488:9927:400:0]:58279;rport=58279;received=2803:6080:f8bc:9272:e488:9927:400:0;branch=z9hG4bKPjr33j97A1mx5J8HWHEy2zIgqZYCCIb4Fb;alias
|
|
838
|
+
Contact: <sip:+172.25.58.54:5060>
|
|
839
|
+
Proxy-Authenticate: Digest realm="sip.twilio.com",nonce="eyOam_8-l5FVugxsyxFRjnlxq9vy1TjQIMB3mBfJuAvB5gV4",opaque="4a6a068be2ca2032a57912b9a2a6adf7",qop="auth"
|
|
840
|
+
Content-Length: 0
|
|
841
|
+
Content-Length: 0
|
|
842
|
+
```
|
|
843
|
+
|
|
844
|
+
#### Segundo INVITE com autorização da Meta
|
|
845
|
+
|
|
846
|
+
```
|
|
847
|
+
INVITE sip:+12145551869@meta-voip.example.com;transport=tls SIP/2.0
|
|
848
|
+
Via: SIP/2.0/TLS 31.13.66.215:5061;rport;branch=z9hG4bKPj16be0694dc6763eb66de5ec5f262db03;alias
|
|
849
|
+
Record-Route: <sip:wa.meta.vc;transport=tls;lr>
|
|
850
|
+
Record-Route: <sip:onevc-sip-proxy.fbinfra.net:8191;transport=tls;lr>
|
|
851
|
+
Via: SIP/2.0/TLS [2803:6080:f948:9597:7253:922a:400:0]:5061;branch=z9hG4bKPj16be0694dc6763eb66de5ec5f262db03
|
|
852
|
+
Via: SIP/2.0/TLS [2803:6080:f8bc:9272:e488:9927:400:0]:58279;rport=58279;received=2803:6080:f8bc:9272:e488:9927:400:0;branch=z9hG4bKPjYp9LqI0D8zJ.wly5wyMyVaH9fUwIU921;alias
|
|
853
|
+
Max-Forwards: 69
|
|
854
|
+
From: "12195550714" <sip:+12195550714@wa.meta.vc>;tag=ece2da15-39e7-4983-ac65-e312f325d94a
|
|
855
|
+
To: <sip:+12145551869@meta-voip.example.com>
|
|
856
|
+
Contact: <sip:+12195550714@wa.meta.vc;transport=tls;ob>;isfocus
|
|
857
|
+
Call-ID: outgoing:wacid.HBgLMTIxOTU1NTA3MTQVAgASGCA2MUI2QUY0MDRCMTUyOTM4QkE5ODEwN0ZGQTAwODkxORwYCzEyMTQ1NTUxODY5FQIAFRoA
|
|
858
|
+
CSeq: 9990 INVITE
|
|
859
|
+
X-FB-External-Domain: wa.meta.vc
|
|
860
|
+
Allow: INVITE, ACK, BYE, CANCEL, NOTIFY, OPTIONS
|
|
861
|
+
User-Agent: Facebook SipGateway
|
|
862
|
+
Proxy-Authorization: Digest username="12145551869", realm="sip.twilio.com", nonce="eyOam_8-l5FVugxsyxFRjnlxq9vy1TjQIMB3mBfJuAvB5gV4", uri="sip:+12145551869@meta-voip.example.com", response="b28ed6b8bf1418e3c6eca05ef8c7a0b1", cnonce="TY2SszvYCKitUCBlVLpGiPKMQfmBbj", opaque="4a6a068be2ca2032a57912b9a2a6adf7", qop=auth, nc=00000001
|
|
863
|
+
Content-Type: application/sdp
|
|
864
|
+
Content-Length: 643
|
|
865
|
+
|
|
866
|
+
v=0
|
|
867
|
+
o=- 1750716867913 2 IN IP4 127.0.0.1
|
|
868
|
+
s=-
|
|
869
|
+
t=0 0
|
|
870
|
+
a=group:BUNDLE audio
|
|
871
|
+
a=msid-semantic: WMS 4e37b099-8aef-45d0-be4f-1cde2ca5a37d
|
|
872
|
+
m=audio 3480 RTP/SAVP 111 126
|
|
873
|
+
c=IN IP4 57.144.219.49
|
|
874
|
+
a=rtcp:9 IN IP4 0.0.0.0
|
|
875
|
+
a=mid:audio
|
|
876
|
+
a=sendrecv
|
|
877
|
+
a=msid:4e37b099-8aef-45d0-be4f-1cde2ca5a37d WhatsAppTrack1
|
|
878
|
+
a=rtcp-mux
|
|
879
|
+
a=crypto:**************************************************************************
|
|
880
|
+
a=rtpmap:111 opus/48000/2
|
|
881
|
+
a=fmtp:111 maxaveragebitrate=20000;maxplaybackrate=16000;minptime=20;sprop-maxcapturerate=16000;useinbandfec=1
|
|
882
|
+
a=rtpmap:126 telephone-event/8000
|
|
883
|
+
a=maxptime:20
|
|
884
|
+
a=ptime:20
|
|
885
|
+
a=ssrc:215879358 cname:WhatsAppAudioStream1
|
|
886
|
+
```
|
|
887
|
+
|
|
888
|
+
#### SIP OK do servidor de servidor SIP parceiro
|
|
889
|
+
|
|
890
|
+
```
|
|
891
|
+
SIP/2.0 200 OK
|
|
892
|
+
CSeq: 9990 INVITE
|
|
893
|
+
Call-ID: outgoing:wacid.HBgLMTIxOTU1NTA3MTQVAgASGCA2MUI2QUY0MDRCMTUyOTM4QkE5ODEwN0ZGQTAwODkxORwYCzEyMTQ1NTUxODY5FQIAFRoA
|
|
894
|
+
From: "12195550714" <sip:+12195550714@wa.meta.vc>;tag=ece2da15-39e7-4983-ac65-e312f325d94a
|
|
895
|
+
To: <sip:+12145551869@meta-voip.example.com>;tag=29360930_c3356d0b_4933dc58-f035-4597-b075-04b19e552329
|
|
896
|
+
Via: SIP/2.0/TLS 31.13.66.215:5061;rport=62080;received=69.171.251.112;branch=z9hG4bKPj16be0694dc6763eb66de5ec5f262db03;alias
|
|
897
|
+
Via: SIP/2.0/TLS [2803:6080:f948:9597:7253:922a:400:0]:5061;branch=z9hG4bKPj16be0694dc6763eb66de5ec5f262db03
|
|
898
|
+
Via: SIP/2.0/TLS [2803:6080:f8bc:9272:e488:9927:400:0]:58279;rport=58279;received=2803:6080:f8bc:9272:e488:9927:400:0;branch=z9hG4bKPjYp9LqI0D8zJ.wly5wyMyVaH9fUwIU921;alias
|
|
899
|
+
Record-Route: <sip:54.172.60.0:5060;lr;r2=on;twnat=sip:69.171.251.112:62080>
|
|
900
|
+
Record-Route: <sip:54.172.60.0:5061;transport=tls;lr;r2=on;twnat=sip:69.171.251.112:62080>
|
|
901
|
+
Record-Route: <sip:wa.meta.vc;transport=tls;lr>
|
|
902
|
+
Record-Route: <sip:onevc-sip-proxy.fbinfra.net:8191;transport=tls;lr>
|
|
903
|
+
Contact: <sip:+172.25.43.84:5060>
|
|
904
|
+
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, NOTIFY
|
|
905
|
+
Content-Type: application/sdp
|
|
906
|
+
X-Twilio-CallSid: CAd4d6e59a356c4d1b0ee85323b2d9dab5
|
|
907
|
+
Content-Length: 444
|
|
908
|
+
Content-Type: application/sdp
|
|
909
|
+
Content-Length: 444
|
|
910
|
+
|
|
911
|
+
v=0
|
|
912
|
+
o=root 477560318 477560318 IN IP4 172.18.156.61
|
|
913
|
+
s=Twilio Media Gateway
|
|
914
|
+
c=IN IP4 168.86.137.174
|
|
915
|
+
t=0 0
|
|
916
|
+
m=audio 12710 RTP/SAVP 111 126
|
|
917
|
+
a=rtpmap:111 opus/48000/2
|
|
918
|
+
a=fmtp:111 maxplaybackrate=16000;sprop-maxcapturerate=16000;maxaveragebitrate=20000;useinbandfec=1
|
|
919
|
+
a=rtpmap:126 telephone-event/8000
|
|
920
|
+
a=fmtp:126 0-16
|
|
921
|
+
a=crypto:**************************************************************************
|
|
922
|
+
a=ptime:20
|
|
923
|
+
a=maxptime:20
|
|
924
|
+
a=sendrecv
|
|
925
|
+
```
|
|
926
|
+
|
|
927
|
+
## Como configurar o SDES para o protocolo de troca de chave do SRTP
|
|
928
|
+
|
|
929
|
+
A troca de chave do Protocolo de transporte seguro em tempo real (SRTP) é um protocolo criptográfico usado para trocar com segurança as chaves de criptografia entre duas partes em um canal de comunicação inseguro.
|
|
930
|
+
|
|
931
|
+
Você pode configurar a troca de chave do SRTP de uma destas duas maneiras:
|
|
932
|
+
|
|
933
|
+
- DTLS (padrão): troca de chave criptografada padrão do setor. Recomendado.- SDES: a chave de texto sem formatação é definida no SDP, que é enviado por meio do protocolo de sinalização seguro (SIP).
|
|
934
|
+
|
|
935
|
+
Observação: o SDES pode ser usado apenas quando a sinalização do SIP está habilitada.
|
|
936
|
+
|
|
937
|
+
### Configurar/atualizar o protocolo de troca de chave do SRTP
|
|
938
|
+
|
|
939
|
+
#### Sintaxe da solicitação
|
|
940
|
+
|
|
941
|
+
```
|
|
942
|
+
POST /<PHONE_NUMBER_ID>/settings
|
|
943
|
+
```
|
|
944
|
+
|
|
945
|
+
#### Parâmetros do ponto de extremidade
|
|
946
|
+
|
|
947
|
+
|
|
948
|
+
|
|
949
|
+
Espaço reservado
|
|
950
|
+
|
|
951
|
+
Descrição
|
|
952
|
+
|
|
953
|
+
Exemplo de valor
|
|
954
|
+
|
|
955
|
+
`<PHONE_NUMBER_ID>`
|
|
956
|
+
|
|
957
|
+
_Número inteiro_
|
|
958
|
+
|
|
959
|
+
**Obrigatório**
|
|
960
|
+
|
|
961
|
+
|
|
962
|
+
O número de telefone comercial cujas configurações da API de Ligações estão sendo atualizadas.
|
|
963
|
+
|
|
964
|
+
[Saiba mais sobre a formatação de números de telefone na API de Nuvem](/documentation/business-messaging/whatsapp/business-phone-numbers/phone-numbers)
|
|
965
|
+
|
|
966
|
+
`+12784358810`
|
|
967
|
+
|
|
968
|
+
#### Corpo da solicitação
|
|
969
|
+
|
|
970
|
+
```
|
|
971
|
+
{ "calling": { "status": "ENABLED", "call_icon_visibility": "DEFAULT" . . . "srtp_key_exchange_protocol": "DTLS (default) | SDES", . . . }. . .}
|
|
972
|
+
```
|
|
973
|
+
|
|
974
|
+
#### Parâmetros do corpo
|
|
975
|
+
|
|
976
|
+
Parâmetro
|
|
977
|
+
|
|
978
|
+
Descrição
|
|
979
|
+
|
|
980
|
+
Exemplo de valor
|
|
981
|
+
|
|
982
|
+
`srtp_key_exchange_protocol`
|
|
983
|
+
|
|
984
|
+
_String_
|
|
985
|
+
|
|
986
|
+
**Opcional**
|
|
987
|
+
|
|
988
|
+
|
|
989
|
+
Habilite ou desabilite o uso do protocolo de troca de chave SRTP.
|
|
990
|
+
|
|
991
|
+
Os valores possíveis são `SDES` e `DTLS`.
|
|
992
|
+
|
|
993
|
+
O padrão é `DTLS`.
|
|
994
|
+
|
|
995
|
+
Observação: a Meta ainda espera que o lado da empresa envie o pacote SRTP inicial tanto para ligações iniciadas pelo usuário quanto pela empresa
|
|
996
|
+
|
|
997
|
+
`“SDES”`
|
|
998
|
+
|
|
999
|
+
#### Resposta de sucesso
|
|
1000
|
+
|
|
1001
|
+
```
|
|
1002
|
+
{ "success": true}
|
|
1003
|
+
```
|
|
1004
|
+
|
|
1005
|
+
### Resposta de erro
|
|
1006
|
+
|
|
1007
|
+
[Consulte "Códigos de erro e solução de problemas da API de Ligações" para saber mais](/documentation/business-messaging/whatsapp/calling/troubleshooting)
|
|
1008
|
+
|
|
1009
|
+
[Veja os códigos de erro gerais da API de Nuvem neste link](/documentation/business-messaging/whatsapp/support/error-codes)
|
|
1010
|
+
|
|
1011
|
+
### Como obter o protocolo de troca de chave do SRTP
|
|
1012
|
+
|
|
1013
|
+
#### Sintaxe da solicitação
|
|
1014
|
+
|
|
1015
|
+
```
|
|
1016
|
+
POST /<PHONE_NUMBER_ID>/settings
|
|
1017
|
+
```
|
|
1018
|
+
|
|
1019
|
+
#### Parâmetros do ponto de extremidade
|
|
1020
|
+
|
|
1021
|
+
|
|
1022
|
+
|
|
1023
|
+
Espaço reservado
|
|
1024
|
+
|
|
1025
|
+
Descrição
|
|
1026
|
+
|
|
1027
|
+
Exemplo de valor
|
|
1028
|
+
|
|
1029
|
+
`<PHONE_NUMBER_ID>`
|
|
1030
|
+
|
|
1031
|
+
_Número inteiro_
|
|
1032
|
+
|
|
1033
|
+
**Obrigatório**
|
|
1034
|
+
|
|
1035
|
+
|
|
1036
|
+
O número de telefone comercial cujas configurações da API de Ligações estão sendo atualizadas.
|
|
1037
|
+
|
|
1038
|
+
[Saiba mais sobre a formatação de números de telefone na API de Nuvem](/documentation/business-messaging/whatsapp/business-phone-numbers/phone-numbers)
|
|
1039
|
+
|
|
1040
|
+
`+12784358810`
|
|
1041
|
+
|
|
1042
|
+
#### Corpo da resposta
|
|
1043
|
+
|
|
1044
|
+
```
|
|
1045
|
+
{ "calling": { "status": "ENABLED", "call_icon_visibility": "DEFAULT" . . . "srtp_key_exchange_protocol": "DTLS | SDES", . . . }. . .}
|
|
1046
|
+
```
|
|
1047
|
+
|
|
1048
|
+
#### Parâmetros da resposta
|
|
1049
|
+
|
|
1050
|
+
Parâmetro
|
|
1051
|
+
|
|
1052
|
+
Descrição
|
|
1053
|
+
|
|
1054
|
+
Exemplo de valor
|
|
1055
|
+
|
|
1056
|
+
`srtp_key_exchange_protocol`
|
|
1057
|
+
|
|
1058
|
+
_String_
|
|
1059
|
+
|
|
1060
|
+
O tipo de protocolo de troca de chave SRTP configurado para o número de telefone comercial consultado
|
|
1061
|
+
|
|
1062
|
+
Os valores possíveis são `SDES` e `DTLS`.
|
|
1063
|
+
|
|
1064
|
+
O padrão é `DTLS`.
|
|
1065
|
+
|
|
1066
|
+
**Observação: se o campo não tiver sido definido explicitamente, ele não será retornado.**
|
|
1067
|
+
|
|
1068
|
+
`“SDES”`
|
|
1069
|
+
|
|
1070
|
+
#### Resposta de erro
|
|
1071
|
+
|
|
1072
|
+
[Consulte "Códigos de erro e solução de problemas da API de Ligações" para saber mais](/documentation/business-messaging/whatsapp/calling/troubleshooting)
|
|
1073
|
+
|
|
1074
|
+
[Veja os códigos de erro gerais da API de Nuvem neste link](/documentation/business-messaging/whatsapp/support/error-codes)
|
|
1075
|
+
|
|
1076
|
+
## Endereços IP
|
|
1077
|
+
|
|
1078
|
+
Os endereços IP usados para a configuração de SIP são os mesmos listados para os webhooks na [seção Endereços IP de webhooks da API de Nuvem](/documentation/business-messaging/whatsapp/webhooks/overview#ip-addresses).
|
|
1079
|
+
|
|
1080
|
+
Essa referência serve apenas para indicar os endereços IP que devem ser incluídos na lista de permissão para o tráfego de SIP. Quando o SIP está habilitado, os webhooks relacionados a ligações não são enviados.
|
|
1081
|
+
|
|
1082
|
+
## Solução de problemas
|
|
1083
|
+
|
|
1084
|
+
Consulte [Perguntas frequentes sobre o SIP](/documentation/business-messaging/whatsapp/calling/faq#session-initiation-protocol--sip--faq) para ver mais perguntas e respostas específicas sobre o SIP e [Erros no SIP](/documentation/business-messaging/whatsapp/calling/troubleshooting#sip-errors) para ver erros e soluções específicas do protocolo
|
|
1085
|
+
|
|
1086
|
+
Você achou esta página útil?
|
|
1087
|
+
|
|
1088
|
+

|
|
1089
|
+
|
|
1090
|
+

|