Descripción general del desarrollo de complementos para amoCRM mediante webHook y widgets

Contenido





  1. WebHook





  2. Widget





  3. Apoyo técnico





  4. Salir





No utilizamos todas las posibilidades de desarrollo para amoCRM, nos limitamos a un widget privado y un webHook, por lo que esto es exactamente lo que discutiremos a continuación.





WebHook





Para cada cuenta (en una prueba solo durante 14 días), puede instalar un  webHook , la  documentación describe el proceso en detalle . No es necesario desarrollar ninguna integración.





En nuestro caso, había suficiente información sobre cómo  agregar una oferta .





url  (  index.php



)  POST json php:





//   POST    {   json
if(strlen($sRawPost) > 0 && $sRawPost[0] == "{")
{
    $sDecode = json_decode($sRawPost, true);
    if($sDecode !== null) 
        $_POST = $sDecode;
}
      
      



 get



  webHook



  ,  post



  :





{
    "leads": {
        "add": [
            {
                "id": 4564454,
                "name": " ",
                "status_id": 7534534,
                "price" => 0,
                "responsible_user_id": 453453453,
                "last_modified": 1612007407,
                "modified_user_id": 0,
                "created_user_id": 0,
                "date_create": 1612007407,
                "pipeline_id": 4546445,
                "tags": [
                    {
                        "id": 7899
                        "name": tilda
                    }
                ]
            }
        ],
        "account_id": 19277260
        "custom_fields": [
            {
                "id": 448797,
                "name": "name_field",
                "code": "code_field",
                "values": [
                    {
                        "value": "string"
                    }
                ]
            }
        ],
        "created_at": 1612007407,
        "updated_at": 1612007407
    },
    "account": [
        {
            "subdomain": "subdomain",
            "id": 19217260,
            "_links": [
                "self": "https://subdomain.amocrm.ru"
            ]
        }
    ]
}
      
      



     account



,  leads["add"][0]["account_id"] == account["id"]



.





 leads["add"][0]["tags"]



   , , - ,  tilda



.





 leads["add"][0]["custom_fields"]



 -   .





"" ,   ,    - -.





, "".





Editar campos de acuerdos

- API.





:





$aAdd = $_POST['leads']['add'][0];
 
//  
$aNameCustomFields = array_column($aAdd['custom_fields'], 'name');
 
//     
 
//  
$idOrder = $aAdd['custom_fields'][array_search('ORDERID', $aNameCustomFields)]['values'][0]['value'];
      
      



Agregar un nuevo campo de oferta

webHook :)





Tilda, Tilda amoCRM. , amoCRM   , CRM





  , .  .





  , .





    .





 javascript,  twig, js  jquery,  css





 manifest.json



 - ,  ,    .   i18n



.





  ,  manifest.json







 WEB SDK  .





, ,    :)





 ajax  ( , ),  Access-Control-Allow-Origin: *



:





header("Access-Control-Allow-Origin: *");
      
      



, ,     .





,  manifest.json



     widget.version



, .





amoCRM CRM . CRM , 14 . ,  CRM,   . 14 . , , 10 . , -       .  ip amoCRMdesde el que envían webHook a nuestro servidor, esos. El soporte a través del chat en línea les brindó amablemente. En el momento de escribir este artículo, las direcciones IP de los servidores de amoCRM no están disponibles públicamente, puede encontrar información sobre ellos a través del chat en línea en el sitio.





Salir

En general, me gustó el desarrollo para amoCRM, la documentación clara y voluminosa con ejemplos, pero cargar el widget trae ciertos inconvenientes.





Autor: Vitaly Buturlin








All Articles