Как зарегистрировать веб-хуки при установке приложения - Laravel & Shopify - PullRequest
0 голосов
/ 09 ноября 2018

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

Ниже приведена функция установки приложения и функция установки webhook.

Есть ли способ сделать мой маршрут автоматически запущенным во время выполнения install(), так что мой веб-хук будет зарегистрирован как пользователь, устанавливающий приложение.

Как я могу это сделать?

Контроллер

public function install(Request $request)
{
    $shop_name = $request->domain;
$scopes = 'read_script_tags,write_script_tags,read_products,write_products,read_customers, write_customers,read_orders, write_orders,read_checkouts, write_checkouts,read_draft_orders,write_draft_orders';

    $url = 'https://'.$shop_name.'/admin/oauth/authorize?client_id='.env('API_KEY').'&scope='.$scopes.'&redirect_uri='.env('APP_URL').'/auth';
    return redirect($url);
}

   //webhook to be registered as user installs

     public function registerOrderPlaceWebhook()
        {
                 $shop = Auth::user()->site;
                $token = Auth::user()->access_token;
                $shopify = Shopify::setShopUrl($shop)->setAccessToken($token);
                Shopify::setShopUrl($shop)->setAccessToken($token)->post("admin/webhooks.json", ['webhook' => 
                 ['topic' => 'orders/create',
                 'address' => 'https://example.domain.com/order-create-webhook',
                 'format' => 'json'
                 ]
                ]);
        }

Маршрут

Route::get('order-create-webhook', Controller@registerOrderPlaceWebhook);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...