The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

NAME

WWW::FCM::HTTP::V1 - Client for Firebase Cloud Messaging HTTP v1 API

SYNOPSIS

    use WWW::FCM::HTTP::V1;

    # https://firebase.google.com/docs/cloud-messaging/auth-server
    my $api_key_json = '{ "type": "service_account"...'; # from service-account.json
    my $api_url      = 'https://fcm.googleapis.com/v1/projects/{ project_id }/messages:send'; # from Project ID

    my $fcm = WWW::FCM::HTTP::V1->new({
        api_url      => $api_url,
        api_key_json => $api_key_json,
     });

    # https://firebase.google.com/docs/cloud-messaging/send-message
    my $res = $fcm->send({
        message => {
            token        => "bk3RNwTe3H0:CI2k_HHwg...", # from Device registration token
            notification => {
                body  => "This is an FCM notification message!",
                title => "FCM Message",
            },
        },
    });

    # handle HTTP error
    unless ($res->is_success) {
        die $res->error;
    }

DESCRIPTION

WWW::FCM::HTTP::V1 is a Client for Firebase Cloud Messaging HTTP v1 API.

FCM HTTP v1 API authorizes requests with a short-lived OAuth 2.0 access token.

SEE ALSO https://firebase.google.com/docs/reference/fcm/rest/v1/projects.messages.

METHODS

new(\%args)

Create a FCM API Client.

send(\%content)

Request to FCM API.

LICENSE

Copyright (C) omohayui.

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

AUTHOR

omohayui <omohayui@gmail.com>