წვდომა ანგარიშსა და პროექტზე
გამოიყენეთ ჩართული API ანგარიში HTTPS პროტოკოლით, ნებადართული IP მისამართიდან. პროექტი ამ ანგარიშს უნდა ეკუთვნოდეს და წაშლილი არ უნდა იყოს. გამოიყენეთ პორტირების შეკვეთის სამუშაო პროცესიდან მიღებული პროექტის უნიკალური იდენტიფიკატორი და არა მონაცემთა ბაზაში მისი რიცხვითი იდენტიფიკატორი ან ტელეფონის ნომერი. მოთხოვნის შედგენისას პროექტის იდენტიფიკატორს URL-კოდირება გაუკეთეთ.
მოემზადეთ ნომრების დასამატებლად
ეს ოპერაცია ცვლის არსებულ პორტირების პროექტს. ჯერ პორტირების შეკვეთის სამუშაო პროცესის მეშვეობით გადაამოწმეთ ნომრები და მომხმარებლის თანხმობა. თითოეული ნომერი წარმოადგინეთ სრული საერთაშორისო ნომრის ციფრებით, თავად წაშალეთ დუბლიკატები და შეამოწმეთ პროექტში უკვე არსებული ნომრების სია. ნუ გამოიყენებთ ამ საბოლოო წერტილს თვითნებური ნომრების შესამოწმებლად.
მიმდინარე პორტალი ამ მარშრუტის გამოძახებამდე ამოწმებს ნომრების სისწორეს და სტანდარტულ ფორმატში გადაჰყავს ისინი. ძველი საბოლოო წერტილი უშუალო გამოყენებისას იმავე დაცვის მექანიზმებს არ უზრუნველყოფს: ის შეყვანილი მონაცემების თავში და ბოლოში გამოტოვებებს აშორებს, მაგრამ არ ამოწმებს ტელეფონის ნომრის ფორმატს, ქვეყნის კოდს, დუბლიკატებს ან პროექტის სამუშაო პროცესის სტატუსს.
POST მოთხოვნა
შექმენით ლოკალური ფაილი numbers.json შემდეგი სტრუქტურით. ნომრები გამოგონილია; ჩაანაცვლეთ ისინი შერჩეული პროექტისთვის ნებადართული ნომრებით.
{
"numbers": [
"12025550123",
"12025550124"
],
"isocode": "US"
}curl --silent --show-error --user "$API_USER:$API_PASSWORD" \
--header "Content-Type: application/json" \
--data-binary @numbers.json \
"https://api.multitel.net/v3/lnp/project/$PROJECT_ID/addnumbers"| ველი | მნიშვნელობა |
|---|---|
| numbers | სავალდებულო არაცარიელი მასივი, რომლის ელემენტებიც ნომრების შემცველი სტრიქონებია, ან სტრიქონი, რომელშიც თითოეული ნომერი ახალ ხაზზეა მოცემული. ცარიელი ჩანაწერები უგულებელყოფილია, ხოლო თავსა და ბოლოში გამოტოვებები მოცილებულია. მძიმეებით გამოყოფილი ტექსტი ცალკეულ ნომრებად არ იყოფა. |
| isocode | ქვეყნის არასავალდებულო კოდი დასამატებელი ჩანაწერებისთვის. თუ გამოტოვებულია ან ცარიელია, გამოიყენება პროექტის მდებარეობა. დამმუშავებელი მოწოდებულ მნიშვნელობას თავსა და ბოლოში გამოტოვებებს აშორებს, მაგრამ არ გადაჰყავს ზედა რეგისტრში და არ ამოწმებს მის სისწორეს. თავად მიუთითეთ ქვეყნის სწორი კოდი ზედა რეგისტრის ასოებით. |
ამ მაგალითისთვის გამოიყენეთ POST მეთოდი application/json ფორმატით. ფორმის POST მონაცემებიც იკითხება. მეთოდი არ განსაზღვრავს იდემპოტენტურობის გასაღებს ან ამ საბოლოო წერტილისთვის პაკეტის უსაფრთხო ზომის გარანტირებულ პირობას; ივარაუდებული ლიმიტის იმედად ყოფნის ნაცვლად გადაამოწმეთ ადვილად სამართავი ზომის პაკეტების შედეგები.
პასუხში მითითებული შედეგი
პასუხის გამოგონილი მაგალითი.
{
"status": {
"code": 200,
"msg": "Success add numbers"
},
"response": {
"uniqueid": "PROJECT_EXAMPLE",
"count": 2,
"numbers": [
{
"id": 21,
"number": "12025550123",
"status": 0,
"status_str": "Pending",
"isocode": "US"
},
{
"id": 22,
"number": "12025550124",
"status": 0,
"status_str": "Pending",
"isocode": "US"
}
]
}
}პასუხი იმ დამატებებს, რომელთა შესრულებაც სცადა, Pending სტატუსით აღნიშნავს. შედეგის შეტყობინებამდე ის მონაცემთა ბაზაში თითოეული ჩასმის შედეგს არ ამოწმებს. ამიტომ მხოლოდ რაოდენობა ან დაბრუნებული იდენტიფიკატორი არ ადასტურებს, რომ ყველა ჩანაწერი შენახულია. Pending სტატუსის მქონე დამატება არ ნიშნავს ოპერატორის მიერ მიღებას, დაგეგმილ გადატანას ან დასრულებულ აქტივაციას.
გამეორებამდე გადაამოწმეთ მონაცემები
- ნომრების დამატებამდე წაიკითხეთ პროექტის ნომრების სია და დაგეგმილი დამატება თქვენი მოთხოვნების აღრიცხვაში შეინახეთ.
- დამატების მოთხოვნა მხოლოდ ერთხელ გაგზავნეთ.
- ხელახლა წაიკითხეთ პროექტის ნომრების სია და შეადარეთ თითოეული დაგეგმილი ნომერი. შეამოწმეთ დუბლიკატები და თითოეული ნომრის სტატუსი.
- თუ მოთხოვნის ლოდინის დრო ამოიწურება, შეცდომა დაბრუნდება ან შედეგი ორაზროვანი იქნება, გამეორებამდე ხელახლა წაიკითხეთ მონაცემები. ზოგიერთი დამატებული ჩანაწერი შესაძლოა უკვე არსებობდეს.
- მთელი მოთხოვნის ბრმად გამეორების ნაცვლად, გამოტოვებული ან დუბლირებული ჩანაწერების საკითხი პორტირების შეკვეთის სამუშაო პროცესის ან მხარდაჭერის სამსახურის მეშვეობით მოაგვარეთ.
დამმუშავებელი ჩანაწერებს სათითაოდ ამატებს, ტრანზაქციისა და დუბლიკატებისგან დაცვის გარეშე. შეფერხების შემთხვევაში მანამდე ჩაწერილი მონაცემები შეიძლება შენარჩუნდეს; წარუმატებელი ჩასმა, რომელიც false მნიშვნელობას აბრუნებს, მაინც შეიძლება მოხვდეს პასუხში მითითებულ რაოდენობაში. მოთხოვნის გამეორებამ შეიძლება დუბლირებული ჩანაწერები დაამატოს. თავად დამმუშავებელი არც მოვლენას აღრიცხავს და არც ოპერატორთან გადატანას ასრულებს.
ძველი სისტემის შეცდომები
POST მეთოდის გარდა სხვა მეთოდი აბრუნებს API კოდს 403. თუ პროექტი არ არსებობს, წაშლილია ან ანგარიშს არ ეკუთვნის, ბრუნდება API კოდი 404. ნომრების ცარიელი მონაცემების შემთხვევაშიც ბრუნდება API კოდი 404. მოქმედებს ავთენტიფიკაციისა და წყაროს IP მისამართის შეზღუდვები. ძველი სისტემის ეს კოდები არ ადასტურებს, რომ დამუშავების დაწყების შემდეგ მანამდე არცერთი ჩასმა არ შესრულებულა.
დარიცხვისა და გადატანის ფარგლები
განხილული დამმუშავებელი პროექტის ნომრების ჩანაწერებს ამატებს და არ შეიცავს ანგარიშიდან თანხის პირდაპირ ჩამოჭრას ან ოპერატორისთვის მოთხოვნის გაგზავნას. ეს არ ნიშნავს, რომ პორტირების მთელი მომსახურება უფასოა, და არ აუქმებს შეთანხმებულ პორტირების საფასურს. სანამ გადატანას მოელით, შეასრულეთ პროექტისთვის თანხმობის, დოკუმენტებისა და განხილვის ყველა მოთხოვნა.