แแ แ แฌแแแแ แแแแแแแ แฎแแแก แฌแแ, แฉแแแ แแแแแแ แแแ แฃแคแแกแ CRM แกแแกแขแแแ, แ แแแแแแช แแแขแแแ แแ แแแฃแแแ แฃแคแแกแ PBX-แแแ. แแ แฎแแแก แแแแแแแแแแแจแ 14-แแ แแแแแแแแแ แแ 000-แแ แแแแแแจแ แแแแแแ แแกแแ แแแแแ.
แแฎแแ แฉแแแ แแแแแแแแแ แฆแแ API แแแขแแ แคแแแกแก, แ แแแแแจแแช ZCRM-แแก แคแฃแแฅแชแแแแแก แฃแแแขแแกแแแ แฎแแแแแกแแฌแแแแแแ. API แกแแจแฃแแแแแแก แแแซแแแแ แแแแแแงแแแแ CRM แแแงแแแแแแแก แแแแแกแแแแ แ แแ แฎแแกแแแแก.
แฅแแแแแ แแแแแแ แแฆแแฌแแ แ API-แกแแแ แแฃแจแแแแแก แแ แแแก แฎแแแแแกแแฌแแแแ แคแฃแแฅแชแแแแแ แแแแก. แแกแแแ แแแชแแแฃแแแ แแแ แขแแแ, แแแแ แแ แกแแกแแ แแแแแ แแ แกแแแฃแจแแ แแแแแแแแ: แกแแแขแแ แแ แกแแแฃแแ แคแแ แแแแแ แขแงแแแแก แจแแฅแแแแก แกแแ แแแขแ.
แแแแแแ แฃแคแแกแ CRM-แแก แจแแกแแฎแแ
แแแแ แจแแแแแแแแ แแฎแกแแแกแแแ แ แ แแ แแก CRM.
แ แแก แแแจแแแแก แฃแคแแกแ? แแ แแ แกแแแแแก ZCRM แขแแ แแคแแแ แแ แกแแ แแแกแแแ, แ แแแแแแจแแช แฃแแแ แแแแแแฎแแแแ. แแ แแแแแ แแ, แ แแกแ แแแแแฎแแแช แแแแแฌแแแ แแ แแก แกแแขแแแแคแแแ แแแ แแแ แแ แแแแ แแแ (แกแแแชแแแแฃแ แ แขแแ แแคแแแแก แแแฎแแแแแ, แแแแแแแแแ, แแแแ แแก แงแแแแแแแแฃแ แ แแแแแกแแฎแแแ แแแกแแแแจแ แแ แแก 95 แ แฃแแแ แแ แแแแแแแจแ 1 แแแ แ). แแ แแฃ แแแ แแแ แแแแฅแแแก แแ แแ แแก? แแฅแแแ แแแแฅแแแก แแ แฃแแแ แแแแแแฎแแแแ.
แฃแคแแกแ CRM แแฅแขแแฃแ แแ, แฎแแแ แฃแคแแกแ PBX Zadarma แแฅแขแแฃแ แแ. แ แแแแกแขแ แแชแแแก แจแแแแแ PBX แแแฅแแแแแแก 2 แแแแ แแก แแแแแแแแแแแจแ, แกแแแแแแแแแ แกแแญแแ แแ แแแแแกแแแแ แ แแแแฎแแ แแแแแ แแจแแก แจแแแกแแแ 1 แแแแจแ 3-แฏแแ . แซแแแแ แฌแแ แแแกแแแแแแแ แแคแแกแ, แ แแแแแกแแช แกแญแแ แแแแ CRM แแ PBX, แแแแ แแ แกแแแ แแแ แแ แแ แแก แกแแญแแ แ แแแแแ แ แแ แแแ แแแ.
แ แแขแแ แแญแแ แแแแแ API แฃแคแแกแ CRM-แแกแแแแก
ZCRM-แแก แแแแแแแแ แแแ แแ แแ แฌแฃแแแ แแ แฉแแ แแแแ, แแแแ แ แแแแ แแ แแแขแแ แ แคแฃแแฅแชแแ แแแแแฉแแแ. แแแแ แแ แฉแแแ แแแแกแแแก, แ แแ แญแแจแแแ แแขแแ แคแฃแแฅแชแแแแแแฃแ แ แกแแกแขแแแแก แฌแแ แแแกแแฉแแแแ แแ แแ แ แแฎแแแแ แญแแแแแแ แแแฃแแแฃแฅแแก, แกแแขแแแแคแแแ แแแขแแแ แแชแแ แกแแแแแ แแกแ แแ แแ แแก.
แ แแช แฃแคแ แ แแแขแ แแแแขแแฅแขแแ แแแแแแขแแแ, แแแ แฃแแแแแกแ แแ แแแแขแแฅแขแแแ แจแแแซแแแแ แซแแแแแ แแแแกแฎแแแแแแฃแแ แแงแแก. API-แก แฌแงแแแแแแ, แแฅแแแ แจแแแแซแแแแ แแแขแแแแขแฃแ แแ แจแแแงแแแแแ (แแ, แแแ แแฅแแ, แแแแฆแแ) แแแคแแ แแแชแแ แแแแแแขแแก / แฌแแแงแแแแแก แแ แแแแชแแแแแแก แจแแกแแฎแแ แฃแแ แแแแแแแ. แแแแก แฌแงแแแแแแ แจแแกแแซแแแแแแ แฎแแแแ แแแแฃแแแแแชแแแก แแแแแกแแแแ แ แแ แฎแแก แแแแแแจแแ แแแ แแแแฎแแแ แแแแแแแแ แแ แกแฎแแ แแแขแแแแขแแแแชแแแก แกแแกแขแแแแแแแ.
API-แก แฌแงแแแแแแ, แฃแคแแกแ ZCRM แจแแแซแแแแ แแแแแงแแแแแฃแ แแฅแแแก แแแแแกแแแแ แ แแแแ, แแแแแแแแ แแ แแแฌแแแแแ แแ. แแแแแแแแแ, แ แแแแ แช แแแกแแฎแแ แฎแแแแแ แแแขแแ แคแแแกแ แแแ แแแ แแขแแฃแ แแแแฎแแแ แแแแแแ แแแแแกแแแ แแฃแจแแแแแกแแแแก, แแ แ แแแแ แช แแแ แขแแแ แแแกแแฎแแ แฎแแแแแ แแ แแคแแแ.
แฅแแแแแ แแแชแแแฃแแแ แแกแแแ แแ แฎแแก แแแแแแแแ - แกแแแขแแ CRM แฌแแแงแแแ แคแแ แแแแแแ แแแแแแจแแ แแแ. แแแแแแแแแแแ แกแแแขแแ แแแแชแแแ แกแฎแแ แแแแแแแแแแก, แแแแแแแแแ, แแแแแแแแแก แจแแฅแแแ แแแแแแขแแก แฃแแแ แแแ แแแแแกแแแแก (แแแแแแแแฃแแ แแแ แ).
แซแแ แแแแแ ZCRM API แแแแแแแแ
แแแแแแแแ ZCRM API-แจแ แฎแแแแแกแแฌแแแแแแ 37 แแแแแแ, แฉแแแ แแแแก แจแแแแแแแแแ แงแแแแ แแแแแแแแก แแฆแฌแแ แแกแแแ, แแฆแแฌแแ แ แแฎแแแแ แแแ แซแแ แแแแ แฏแแฃแคแแแก แแแแแแแแแแแ.
แกแ แฃแแ แกแแ แแแแแแแแแแแ แฎแแแแแกแแฌแแแแแแ แแแแกแแแขแแ แแแกแแแแ แแแ
แจแแกแแซแแแแแแแ แจแแแแแแ แฏแแฃแคแแแแก แแแแแแแแแ แแฃแจแแแแ:
- แแแแแแขแแแ (แแแแแแ แกแแ, แชแแแแ แแ แฉแแแแแ, แ แแแแฅแขแแ แแแ, แฌแแจแแ)
- แขแแแแแ แแ แแแแแแขแแแแก แแแแแขแแแแแ แแแแกแแแแแ
- แแแแฎแแแ แแแแแแ แแ แฎแ (แแแฎแแ, แ แแแแฅแขแแ แแแ, แฉแแแแฌแแ แแแแก แฌแแจแแ แแแแฎแแแ แแแแแแ แแ แฎแแแจแ)
- แแแแแแขแแก แแแแแแจแ แแแแแแ (แ แแแแแ แแแแแแขแ แฉแแแฃแแแแ แแ แแฃแ แแแแฃแแ แแแ แแ, แแแก แจแแแซแแแแ แฐแงแแแแแก แกแแแแแแ แแแแ แ แแแแแแจแ แแแแแ)
- แแแแชแแแแแ (แงแแแแ แคแฃแแฅแชแแ แแแแชแแแแแแแ แแฃแจแแแแแกแแแแก)
- แแแแแ แแแก (แแกแแแแกแแ, แงแแแแ แคแฃแแฅแชแแ)
- CRM แแแแฎแแแ แแแแแแ (แแแแฎแแแ แแแแแแ แกแแแก แฉแแแแแแ, แแแแ แฃแคแแแแแแ, แแแ แแแแขแ แแแ, แแแแขแแฅแขแแแ แแ แกแแแฃแจแแ แกแแแแแแ)
- แแแ แแแ (แแแ แฃแแแแก แแแ แแแแก แกแแแก)
แแแก แจแแแแแ, แ แแช แแแแแแงแแแแแ แแ แกแแแฃแแ Zadarma API แกแขแ แฃแฅแขแฃแ แ, แแแแแแแแแแแแ PHP, C#, Python-แจแ แฃแแแ แฎแแแแแกแแฌแแแแแแ Github-แแ.
API แแแแแงแแแแแแก แแแแแแแแ
แฃแแแ แขแแแแกแ, แแแแ แแ แงแแแแแแ แกแแกแแ แแแแแ แแแแแแแแแ แขแงแแแแก แจแแฅแแแ แคแแ แแแแแ. แแแแแก แแแแแแฃแแแแแ แจแแกแแแแ แฉแฃแแแแแแ, แแก แแแแแแแแ แจแแแชแแแก แแฎแแแแ แซแแ แแแแ แแแแแชแแแแแก. แแกแแแแกแ แแแแแแแแ, แแแแ แแ แแแแแแขแแก แแแแแแขแแ แแแแ (แฉแแแฃแแแแ แแ, แงแแแแ แคแแ แแแ แแ แแก แฌแแ แแแแแแแแแ).
html แคแแ แแแก แแแแแแแแ แแแแแ แแแแก แจแแกแแฅแแแแแแ:
<form method="POST" action="/ka/zcrm_leads">
<label for="name">Name:</label>
<br>
<input type="text" id="name" name="name" value="">
<br>
<label for="phone">Phone:</label><br>
<input type="text" id="phone" name="phones[0][phone]" value="">
<br>
<label for="phone">Email:</label><br>
<input type="text" id="email" name="contacts[0][value]" value="">
<br>
<br>
<input type="submit" value="Submit">
</form>
แแก แคแแ แแ แซแแแแแ แแแ แขแแแแ, แ แแแ แแ แแแแแแขแแแ แแแก แกแขแแขแแ. แแแก แแ แแฅแแก แแแแแแแ, แแแแฉแ, แแแแแแขแแ แแแแก แแแแ. แแแ แกแแ แแแแแแขแแ แแก แแแแแ แฎแแแแแกแแฌแแแแแแ แฉแแแแก แแแแแแ (แแแแแแขแแ แ แแแแขแแแ แแแแแแขแแก แแ แฎแก แแแก แจแแแแแ, แ แแช แขแงแแแแก แจแแฅแแแแก แจแแแแแ).
แแ แ แแแแฃแ แแ PHP แแแแแแแแ แคแแ แแแแแ แแแแแชแแแแแแ แขแงแแแแก แจแแกแแฅแแแแแแ:
<?php
$postData = $_POST;
if ($postData) {
if (isset($postData['phones'], $postData['phones'][0], $postData['phones'][0]['phone'])) {
$postData['phones'][0]['type'] = 'work';
}
if (isset($postData['contacts'], $postData['contacts'][0], $postData['contacts'][0]['value'])) {
$postData['contacts'][0]['type'] = 'email_work';
}
$params = ['lead' => $postData];
$params['lead']['lead_source'] = 'form';
$leadData = makePostRequest('/v1/zcrm/leads', $params);
var_dump($leadData);
}
exit();
function makePostRequest($method, $params)
{
// ะทะฐะผะตะฝะธัะต userKey ะธ secret ะฝะฐ ะฒะฐัะธ ะธะท ะปะธัะฝะพะณะพ ะบะฐะฑะธะฝะตัะฐ
$userKey = '';
$secret = '';
$apiUrl = 'https://api.zadarma.com';
ksort($params);
$paramsStr = makeParamsStr($params);
$sign = makeSign($paramsStr, $method, $secret);
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $apiUrl . $method);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($curl, CURLOPT_POST, true);
curl_setopt($curl, CURLOPT_CONNECTTIMEOUT, 10);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($curl, CURLOPT_POSTFIELDS, $paramsStr);
curl_setopt($curl, CURLOPT_HTTPHEADER, [
'Authorization: ' . $userKey . ':' . $sign
]);
$response = curl_exec($curl);
$error = curl_error($curl);
curl_close($curl);
if ($error) {
return null;
} else {
return json_decode($response, true);
}
}
/**
* @param array $params
* @return string
*/
function makeParamsStr($params)
{
return http_build_query($params, null, '&', PHP_QUERY_RFC1738);
}
/**
* @param string $paramsStr
* @param string $method
* @param string $secret
*
* @return string
*/
function makeSign($paramsStr, $method, $secret)
{
return base64_encode(
hash_hmac(
'sha1',
$method . $paramsStr . md5($paramsStr),
$secret
)
);
}
แ แแแแ แช แฎแแแแแ, API-แกแแแ แแฃแจแแแแ แกแแแแแแ แแแ แขแแแแ, แแแ แแ แแแแกแ, แแ แกแแแแแก แแฃแจแแแแแก แแแแแแแแแแ
ZCRM แแฃแแแแแแ แแแแแ แแแแ แแ แแแแฅแแแก แงแแแแ แแฎแแแ แคแฃแแฅแชแแ แฎแแแแแกแแฌแแแแแ แแฅแแแแ API-แก แแแจแแแแแแ.
แฉแแแ แแกแแแ แแแแแขแแแแแแ แแฅแแแแ แแ แกแแแฃแแ แกแแกแขแแแแก แกแแกแขแแแแแแก แแแขแแแ แแ แแแ แฃแคแแกแ CRM-แแแ แแ PBX Zadarma-แแแ.
แฌแงแแ แ: www.habr.com