მოამზადეთ შენახული პროფილი და ნომერი
გამოიყენეთ ეს სამუშაო პროცესი შენახული სარეგისტრაციო პროფილის შეძენილ ნომერთან დასაკავშირებლად და, მხარდაჭერილი ოპერატორის ნომრებისთვის, რეგისტრაციის განხილვის მოსათხოვად. ეს არ არის ყველა ნომრის მომწოდებლისთვის განკუთვნილი ზოგადი აქტივაციის API. წარმატებული მოთხოვნა არ ადასტურებს, რომ დოკუმენტები დამტკიცებულია ან ნომერი აქტიურია.
გამოიყენეთ ჩართული MultiTEL API ანგარიში HTTPS-ის მეშვეობით, მისთვის კონფიგურირებული ავტორიზაციის მონაცემებითა და IP შეზღუდვებით. როგორც წაუშლელი პროფილი, ისე შეძენილი, გაუუქმებელი ნომერი თქვენს ანგარიშს უნდა ეკუთვნოდეს.
- შექმენით სარეგისტრაციო პროფილი ან აირჩიეთ არსებული. შეინახეთ ლოკალური პროფილის uuid, რომელსაც create_document აბრუნებს; get_document იმავე ლოკალურ მითითებას აბრუნებს id ველში.
- ოპერატორთან გასაგზავნად პროფილს სჭირდება შენახული საიდენტიფიკაციო და მისამართის ჩანაწერების მითითებები. მიამაგრეთ საჭირო დამადასტურებელი საბუთები და დამატებითი დოკუმენტები შესაბამისი სამუშაო პროცესების მეშვეობით, გაგზავნამდე.
- შეამოწმეთ, რომ ნომერი და პროფილი აკმაყოფილებს შესაბამისი ქვეყნისა და ნომრის მოთხოვნებს. ნუ ჩათვლით, რომ შენახული პროფილი ყველა ნომრისთვის დამტკიცებულია.
გაგზავნეთ დაკავშირების მოთხოვნა
curl --silent --show-error --request POST \
--user "$API_USER:$API_PASSWORD" \
--form-string document_uuid="$PROFILE_UUID" \
--form-string service_description="Example customer support line" \
https://api.multitel.net/v3/number_identity/12125550123გზა შეიცავს შეძენილ ტელეფონის ნომერს და არა მის UUID-ს, PBX-ის შიდა ნომერს ან საიდენტიფიკაციო ჩანაწერის ID-ს. დამმუშავებელი ნომრიდან შლის ყველა არაციფრულ სიმბოლოს. გამოიყენეთ სრული საერთაშორისო ნომერი ქვეყნის კოდით. მაგალითი გამოგონილია და უნდა ჩაანაცვლოთ თქვენი ნომრითა და შენახული ლოკალური პროფილის მითითებით.
| ველი | სავალდებულოა | მნიშვნელობა |
|---|---|---|
document_uuid | დიახ | შენახული ლოკალური პროფილის ზუსტი uuid. მის ნაცვლად არ გამოიყენოთ შენიღბული დისტანციური identity_id, address_id, ატვირთვის ID ან დაბრუნებული registration_details_id მნიშვნელობა. |
service_description | არა | დაგეგმილი სერვისის აღწერა, რომელიც ოპერატორს გადაეცემა შესამოწმებლად. დასაწყისსა და ბოლოში არსებული ჰარები იშლება. |
onetime_files | დამოკიდებულია სამუშაო პროცესზე | მასივი, რომელიც მიიღება ოპერატორის ერთჯერადი დოკუმენტებისთვის. მიმდინარე დამმუშავებელი მის სტრიქონებს დასაწყისისა და ბოლოს ჰარებს აშორებს და გადასცემს ლოკალური ატვირთვის მითითებების ამოხსნის გარეშე. create_encrypt_files ფუნქციის მიერ დაბრუნებულ შენიღბულ ID-ებთან თავსებადობა დადგენილი არ არის; ამ ველის გამოყენებამდე იხილეთ ქვემოთ მოცემული შეზღუდვა ერთჯერადი დოკუმენტების შესახებ. |
მრავალნაწილიან მოთხოვნებში მასივი იყენებს განმეორებულ onetime_files[] ველებს. ასევე მიიღება JSON მოთხოვნა სათაურით Content-Type: application/json; მისი თვისებები ერთიანდება ფორმის გადასაცემ მონაცემებთან. თუ გზაში ნომერი გამოტოვებულია, number შეიძლება მიეთითოს გადასაცემ მონაცემებში. გაურკვევლობის თავიდან ასაცილებლად უპირატესობა მიანიჭეთ ზემოთ ნაჩვენებ აშკარად მითითებულ გზას.
განასხვავეთ დაკავშირება დამტკიცებისგან
წაიკითხეთ როგორც HTTP შედეგი, ისე JSON-ის status.code. JSON შეცდომები შეიძლება მოვიდეს HTTP 200 პასუხთან ერთად. ოპერატორთან დაკავშირებული ოპერაციის წარმატებისას ბრუნდება შეტყობინება: Address verification task created; awaiting carrier review. ამ მაგალითში გამოყენებულია გამოგონილი მითითებები.
{
"status": {
"code": 200,
"msg": "Address verification task created; awaiting carrier review."
},
"response": {
"number": "+12125550123",
"did_id": "11111111111111111111111111111111",
"document_uuid": "0123456789abcdef0123456789abcdef",
"identity_id": "22222222222222222222222222222222",
"address_id": "33333333333333333333333333333333",
"address_verification_id": "44444444444444444444444444444444",
"verification_status": "pending",
"verification_reference": null,
"requirement_id": "55555555555555555555555555555555",
"registration_details_id": "8516ac99dc60603295de7bdb6a153530"
}
}მომწოდებელთან დაკავშირებული იდენტიფიკატორები შენიღბული მითითებებია და მათი გამოყენება ლოკალური პროფილის ID-ების ნაცვლად არ შეიძლება. document_uuid რჩება თქვენ მიერ გაგზავნილი ლოკალური პროფილის მითითებად. ამ დამმუშავებლის ოპერატორთან დაკავშირებული შესრულების გზაში registration_details_id ამ ლოკალური მითითების დამატებითი ჰეშია; შემდგომ პროფილის ან გაგზავნის მოთხოვნებში მისით არ ჩაანაცვლოთ document_uuid.
ზოგიერთი გამოყოფილი ნომერი ოპერატორის შემოწმების შექმნის ნაცვლად საიდენტიფიკაციო ჩანაწერის ლოკალურ დაკავშირებას იყენებს. მათი წარმატებული შედეგია Identity associated. ცარიელი response მასივით. ეს არ ქმნის ოპერატორის განხილვის დავალებას და არ ადასტურებს დამტკიცებას. პორტალს აქვს დაკავშირების უფრო ახალი სამუშაო პროცესი, რომელშიც მომწოდებლებთან მუშაობა და განმეორებითი გაგზავნის შემოწმებები ამ ენდპოინტისგან განსხვავდება.
დაამუშავეთ შეცდომები დავალებების დუბლიკატების შექმნის გარეშე
API კოდი 400 აღნიშნავს ნომრის ან პროფილის მითითების არარსებობას. კოდი 404 აღნიშნავს ანგარიშისთვის მიუწვდომელ პროფილს ან ნომერს, ან ოპერატორის ნომრების მარაგში ნომრის არარსებობას. კოდმა 422 შეიძლება მიუთითოს საიდენტიფიკაციო/მისამართის ჩანაწერების მითითებების არარსებობაზე, გამყიდველის მოთხოვნებზე ან ოპერატორის მიერ ვალიდაციის უარყოფაზე. უკუგამოძახების კონფიგურაციის არარსებობამ შეიძლება გამოიწვიოს 503, ხოლო შექმნისას მონაცემთა გადაცემის შეფერხებამ — 502. წაიკითხეთ შეტყობინება და ნებისმიერი requirement_diagnostics, ნაცვლად იმისა, რომ ყველა წარუმატებლობა ერთნაირად განიხილოთ.
ოპერატორთან დაკავშირებულმა შესრულების გზამ შეიძლება განაახლოს რეგისტრაციის მოლოდინის ლოკალური ნიშნულები მოთხოვნების ვალიდაციის, უკუგამოძახების კონფიგურაციის შემოწმების ან დავალების შექმნის დასრულებამდე. ამიტომ შეცდომა არ ნიშნავს, რომ ლოკალური მდგომარეობა უცვლელია, ხოლო მხოლოდ მოლოდინის ნიშნული არ ადასტურებს დავალების არსებობას. ნუ გამოიყენებთ ამ ნიშნულებს დამტკიცების ან მოთხოვნის მიწოდების დასტურად.
მომწოდებელმა შეიძლება მიიღოს დავალება მაშინაც კი, თუ შემდგომი ლოკალური მონაცემთა ბაზის ოპერაცია წარუმატებელია; ეს დამხმარე ფუნქცია წარმატების შეტყობინებამდე ყველა ლოკალური ჩაწერის შედეგს არ ამოწმებს. ამ დამმუშავებელს არ აქვს კლიენტის იდემპოტენტურობის პარამეტრი ან დუბლირებული გაგზავნისგან დაცვა. ლოდინის დროის ამოწურვის, შეცდომის ან გაურკვეველი შედეგის შემდეგ ნომრის რეგისტრაციის ისტორიის სანახავად გამოიყენეთ პორტალი ან ხელახლა გაგზავნამდე დაუკავშირდით მხარდაჭერის სამსახურს. ლოკალური ჩანაწერის არარსებობა თავისთავად არ ადასტურებს, რომ მომწოდებელს არაფერი მიუღია.
ერთჯერადი დოკუმენტების შეზღუდვა
დამმუშავებელი იღებს onetime_files ველს და თითოეულ არაცარიელ სტრიქონს გადასცემს ოპერატორის დაშიფრულ ფაილებთან კავშირში. ის არ ეძებს მფლობელი ანგარიშის ატვირთვის ჩანაწერებს და არ გარდაქმნის გარე შენიღბულ ატვირთვის ID-ებს მომწოდებლის ფაილის ID-ებად. ოფლაინ აუდიტმა დაადასტურა გადაცემის ქცევა და არა ოპერატორთან წარმატებული მიმაგრება.
ნუ ჩათვლით, რომ create_encrypt_files ფუნქციიდან მიღებული ფაილის ID-ის ამ ველში გადმოტანა საკმარისია ერთჯერადი შეთანხმების სამუშაო პროცესის დასასრულებლად. როდესაც ნომერს ეს დოკუმენტები სჭირდება, გამოიყენეთ პორტალი ან MultiTEL-თან დააზუსტეთ იდენტიფიკატორების გამოყენების მხარდაჭერილი სამუშაო პროცესი. ეს კვლავ API-ის მიმოხილვის გადაუჭრელი ნაწილია და არა თავიდან ბოლომდე შემოწმებული მაგალითი.
დაიცავით სარეგისტრაციო ინფორმაცია
გაგზავნეთ მხოლოდ ის ინფორმაცია და დოკუმენტები, რომელთა ამ ნომრისთვის გამოყენების უფლებაც გაქვთ. პროფილისა და შემოწმების მითითებები შესაბამის ანგარიშს დაუკავშირეთ და მოერიდეთ სარეგისტრაციო მოთხოვნების სრული მონაცემების ჟურნალში ჩაწერას. ეს მოთხოვნა არ შლის ან ანაცვლებს ყველა წინა დამადასტურებელ საბუთსა თუ შემოწმებას. ოპერატორის განხილვა, აქტივაცია და მონაცემების შენახვა ცალკეული პროცესებია.