File Coverage

blib/lib/API/MailboxOrg/API/Videochat.pm
Criterion Covered Total %
statement 26 58 44.8
branch 0 8 0.0
condition n/a
subroutine 9 13 69.2
pod 4 4 100.0
total 39 83 46.9


line stmt bran cond sub pod time code
1              
2             # ABSTRACT: MailboxOrg::API::Videochat
3              
4             # ---
5             # This class is auto-generated by bin/get_mailbox_api.pl
6             # ---
7              
8             use v5.24;
9 2     2   1015  
  2         8  
10             use strict;
11 2     2   11 use warnings;
  2         3  
  2         39  
12 2     2   8  
  2         4  
  2         53  
13             use Moo;
14 2     2   11 use Types::Standard qw(Enum Str Int InstanceOf ArrayRef);
  2         3  
  2         12  
15 2     2   597 use API::MailboxOrg::Types qw(HashRefRestricted Boolean);
  2         14  
  2         17  
16 2     2   2254 use Params::ValidationCompiler qw(validation_for);
  2         4  
  2         12  
17 2     2   769  
  2         5  
  2         117  
18             extends 'API::MailboxOrg::APIBase';
19              
20             with 'MooX::Singleton';
21              
22             use feature 'signatures';
23 2     2   10 no warnings 'experimental::signatures';
  2         4  
  2         150  
24 2     2   10  
  2         4  
  2         709  
25             our $VERSION = '1.0.1'; # VERSION
26              
27             my %validators = (
28             'add' => validation_for(
29             params => {
30             mail => { type => Str, optional => 0 },
31             room_name => { type => Str, optional => 0 },
32             room_memo => { type => Str, optional => 1 },
33              
34             },
35             ),
36             'del' => validation_for(
37             params => {
38             mail => { type => Str, optional => 0 },
39             room_id => { type => Int, optional => 0 },
40              
41             },
42             ),
43             'list' => validation_for(
44             params => {
45             mail => { type => Str, optional => 0 },
46              
47             },
48             ),
49             'update' => validation_for(
50             params => {
51             mail => { type => Str, optional => 0 },
52             room_id => { type => Int, optional => 0 },
53             room_name => { type => Str, optional => 1 },
54             room_password => { type => Str, optional => 1 },
55             room_admin_password => { type => Str, optional => 1 },
56             room_memo => { type => Str, optional => 1 },
57              
58             },
59             ),
60              
61             );
62              
63              
64             my $validator = $validators{'add'};
65 0     0 1   %params = $validator->(%params) if $validator;
  0            
  0            
  0            
66 0            
67 0 0         my %opt = (needs_auth => 1);
68              
69 0           return $self->_request( 'mail.videochat.add', \%params, \%opt );
70             }
71 0            
72             my $validator = $validators{'del'};
73             %params = $validator->(%params) if $validator;
74 0     0 1    
  0            
  0            
  0            
75 0           my %opt = (needs_auth => 1);
76 0 0          
77             return $self->_request( 'mail.videochat.del', \%params, \%opt );
78 0           }
79              
80 0           my $validator = $validators{'list'};
81             %params = $validator->(%params) if $validator;
82              
83 0     0 1   my %opt = (needs_auth => 1);
  0            
  0            
  0            
84 0            
85 0 0         return $self->_request( 'mail.videochat.list', \%params, \%opt );
86             }
87 0            
88             my $validator = $validators{'update'};
89 0           %params = $validator->(%params) if $validator;
90              
91             my %opt = (needs_auth => 1);
92 0     0 1    
  0            
  0            
  0            
93 0           return $self->_request( 'mail.videochat.update', \%params, \%opt );
94 0 0         }
95              
96 0            
97             1;
98 0            
99              
100             =pod
101              
102             =encoding UTF-8
103              
104             =head1 NAME
105              
106             API::MailboxOrg::API::Videochat - MailboxOrg::API::Videochat
107              
108             =head1 VERSION
109              
110             version 1.0.1
111              
112             =head1 SYNOPSIS
113              
114             use API::MailboxOrg;
115              
116             my $user = '1234abc';
117             my $password = '1234abc';
118              
119             my $api = API::MailboxOrg->new(
120             user => $user,
121             password => $password,
122             );
123              
124             =head1 METHODS
125              
126             =head2 add
127              
128             Add a new video channel for an e-mail address
129              
130             Available for admin, account, domain, mail
131              
132             Parameters:
133              
134             =over 4
135              
136             =item * mail
137              
138             =item * room_name
139              
140             =item * room_memo
141              
142             =back
143              
144             returns: boolean
145              
146             $api->videochat->add(%params);
147              
148             =head2 del
149              
150             Delete a video channel from an e-mail address
151              
152             Available for admin, account, domain, mail
153              
154             Parameters:
155              
156             =over 4
157              
158             =item * mail
159              
160             =item * room_id
161              
162             =back
163              
164             returns: boolean
165              
166             $api->videochat->del(%params);
167              
168             =head2 list
169              
170             List all video channels from an e-mail address
171              
172             Available for admin, account, domain, mail
173              
174             Parameters:
175              
176             =over 4
177              
178             =item * mail
179              
180             =back
181              
182             returns: array
183              
184             $api->videochat->list(%params);
185              
186             =head2 update
187              
188             Update a video channel for an e-mail address
189              
190             Available for admin, account, domain, mail
191              
192             Parameters:
193              
194             =over 4
195              
196             =item * mail
197              
198             =item * room_id
199              
200             =item * room_name
201              
202             =item * room_password
203              
204             =item * room_admin_password
205              
206             =item * room_memo
207              
208             =back
209              
210             returns: boolean
211              
212             $api->videochat->update(%params);
213              
214             =head1 AUTHOR
215              
216             Renee Baecker <reneeb@cpan.org>
217              
218             =head1 COPYRIGHT AND LICENSE
219              
220             This software is Copyright (c) 2022 by Renee Baecker.
221              
222             This is free software, licensed under:
223              
224             The Artistic License 2.0 (GPL Compatible)
225              
226             =cut