Разработать Веб Сервис

500 000 руб. за проект
10 февраля 2021, 19:08 • 12 откликов • 67 просмотров

Нужен сайт. С возможностью заведения личного кабинета. В нём клиент должен иметь возможность:

1. авторизоваться (обязательно, в целях безопасности и различия клиентов).

2. получить информацию о своём аккаунте: текущий баланс, контактный номер, ФИО

3. пополнить баланс

4. выбрать целевого специалиста и либо самостоятельно по полученному номеру с ним связаться, либо упросить звонок до одного клика




Сайт должен хранить перечисленную выше информацию и возвращать данные при http-запросах от АТС. Работать будем через POST.




1. по номеру телефона клиента в международном формате 7 (XXX) XXX-XX-XX вернуть его наличие. Т.е. есть такой номер в базе или нет.

input:

array('phone' = '7XXXXXXXXXX')




output:

array('client_exists' = true)




2. если клиент существует, в ответе должна присутствовать сумма на его балансе или количество допустимых минут разговора.

Зависит от того на чьей стороне будет выполнятся прямой и обратный рассчёт. Чтобы АТС не знала ничего о деньгах, предлагаю возвращать именно разрешённые минуты. В идеале секунды.

1800 сек. ~ 30 минут

input:

array('phone' = '7XXXXXXXXXX')




output: array(

'client_exists' = true,

'allow_duration' = 1800

)

Тогда мы сразу выставляем при вызове ограничение на разговор равным полученному allow_duration, и за минуту определённое оповещение. Текст нужно будет согласовать и записать.




3. Важный нюанс: не все будут разговаривать до конца. Поэтому потребуется метод, который будет получать количество секунд разговора, конвертировать секунды в минуты, их в стоимость и вычитать из текущего баланса клиента. В ответе должны быть статус выполнения и разница в старом и новом значениях разрешённого времени.




input:

array(

'phone' => '7XXXXXXXXXX',

'talk_duration' => 800

)




output:

array(

'status' = 'success',

'old_timer' => 1800,

'new_timer' => 1000

)