Adobe Connect Bridge Marketplace edition — initial release

This commit is contained in:
2026-09-01 22:43:54 +03:30
commit 555cd725f7
93 changed files with 20833 additions and 0 deletions
+570
View File
@@ -0,0 +1,570 @@
<?php
// This file is part of Moodle - http://moodle.org/
//
// Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* English language strings for mod_meetletacbmarketplace.
*
* @package mod_meetletacbmarketplace
* @copyright 2026 MeetLet <info@meetlet.net>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
defined('MOODLE_INTERNAL') || die();
$string['pluginname'] = 'Adobe Connect Bridge (Marketplace edition)';
$string['modulename'] = 'Adobe Connect';
$string['modulenameplural'] = 'Adobe Connect';
$string['modulename_help'] = 'Create or link Adobe Connect meetings with SSO join, role mapping, recordings and shared content.';
$string['pluginadministration'] = 'Adobe Connect Bridge (Marketplace edition) administration';
$string['settingsintro'] = 'Connect Moodle to Adobe Connect for meeting creation, SSO join, role mapping, recordings and shared content.';
$string['marketplace_commercial_note'] = 'Attendance reports, offline MP4 video, Windows Agent integration and premium support are available in the commercial MeetLet Adobe Connect Bridge.';
$string['about_visit_website'] = 'Visit the MeetLet website';
$string['marketplace_commercial_visit'] = 'meetlet.net';
$string['meetletacbmarketplace:addinstance'] = 'Add a new MeetLet meeting';
$string['meetletacbmarketplace:view'] = 'View MeetLet meeting';
$string['meetletacbmarketplace:join'] = 'Join MeetLet meeting';
$string['meetletacbmarketplace:host'] = 'Act as Adobe Connect host';
$string['meetletacbmarketplace:presenter'] = 'Act as Adobe Connect presenter';
$string['meetletacbmarketplace:viewrecordings'] = 'View recordings';
$string['meetletacbmarketplace:grade'] = 'Grade MeetLet activity';
$string['meetingname'] = 'Meeting name';
$string['meetingintro'] = 'Meeting summary';
$string['roomsettings'] = 'Room settings';
$string['meeturl'] = 'Custom meeting URL';
$string['meeturl_help'] = 'Optional custom path for the Adobe Connect room (letters, numbers and dashes only). Leave empty to let Connect assign one.';
$string['meetingtype'] = 'Access type';
$string['public'] = 'Public';
$string['private'] = 'Private';
$string['meettemplates'] = 'Meeting template';
$string['defaulttemplate'] = 'Default template';
$string['starttime'] = 'Start time';
$string['endtime'] = 'End time';
$string['endtimeenable'] = 'Set an end time';
$string['greaterstarttime'] = 'End time must be after start time';
$string['invalidurl'] = 'Invalid meeting URL. Use letters, numbers and dashes only, starting with a letter.';
$string['rolemapping'] = 'Role mapping';
$string['rolemapping_desc'] = 'Define a default rule for all participants, then map specific Moodle roles or users to Host or Presenter. Site defaults come from the Access settings tab and can be overridden here for this activity.';
$string['rolemapping_mode'] = 'Mapping source';
$string['rolemapping_mode_help'] = 'Follow site uses the global Moodle→Connect mapping (activity creator is host). Custom lets you define role/user rules only for this activity.';
$string['rolemapping_mode_inherit'] = 'Follow site mapping';
$string['rolemapping_mode_inherit_desc'] = 'Use the plugin-wide mapping, plus the activity owner host convenience rule.';
$string['rolemapping_mode_override'] = 'Custom for this activity';
$string['rolemapping_mode_override_short'] = 'Custom';
$string['rolemapping_mode_override_desc'] = 'Manually define role/user mapping rules only for this activity.';
$string['siterolemapping'] = 'Moodle role → Adobe Connect role mapping';
$string['siterolemapping_desc'] = 'Choose which Adobe Connect room role (Host / Presenter / Participant) each Moodle role gets when joining or acting in Connect. This is the default for new activities; each activity form can override it.';
$string['siterolemapping_defaultinfo'] = 'Built-in default: manager, course creator & editing teacher = Host, teacher = Presenter, everyone else = Participant';
$string['reset_rolemapping'] = 'Reset to default';
$string['reset_rolemapping_confirm_title'] = 'Reset role mapping?';
$string['reset_rolemapping_confirm'] = 'Restore the built-in Moodle → Adobe Connect role mapping? Your custom mapping will be replaced.';
$string['reset_featureaccess'] = 'Reset to default';
$string['reset_featureaccess_confirm_title'] = 'Reset feature access?';
$string['reset_featureaccess_confirm'] = 'Restore the built-in role feature access matrix? Your custom permissions will be replaced.';
$string['accessreset_confirm_reset'] = 'Reset to default';
$string['accessreset_modal_cancel'] = 'Cancel';
$string['accessreset_modal_close'] = 'Close';
$string['accessreset_modal_ok'] = 'OK';
$string['accessreset_busy'] = 'Restoring defaults…';
$string['reset_success_rolemapping'] = 'Role mapping restored to built-in defaults.';
$string['reset_success_featureaccess'] = 'Feature access matrix restored to built-in defaults.';
$string['reset_error'] = 'Could not restore defaults. Please try again.';
$string['adoberole'] = 'Adobe Connect role';
$string['participant_list'] = 'Participant role list';
$string['participant_type_all'] = 'All participants';
$string['participant_type_role'] = 'Role';
$string['participant_type_user'] = 'User';
$string['participant_add'] = 'Add';
$string['participant_remove'] = 'Remove';
$string['participant_as'] = 'as';
$string['role_host'] = 'Host';
$string['role_presenter'] = 'Presenter';
$string['role_participant'] = 'Participant';
$string['allow_manual_offline'] = 'Show offline session video download button';
$string['allow_manual_offline_desc'] = 'Show a per-recording button to request offline session video creation.';
$string['server_group_api'] = 'API connection';
$string['server_group_api_desc'] = 'XML API URL and meeting host.';
$string['server_group_admin'] = 'Server admin account';
$string['server_group_admin_desc'] = 'Adobe Connect administrator used for API calls.';
$string['featureaccess'] = 'Role feature access';
$string['featureaccess_desc'] = 'Choose which meeting features each Moodle role may use.';
$string['featureaccess_activity'] = 'Role feature access for this activity';
$string['featureaccess_override'] = 'Override site-wide access for this activity';
$string['featureaccess_override_help'] = 'When enabled, the matrix below applies only to this activity. Otherwise the plugin site defaults are used.';
$string['featureaccess_usesite'] = 'Built-in plugin defaults';
$string['activity_featureaccess'] = 'Show access matrix on activity form';
$string['activity_featureaccess_desc'] = 'If disabled, the per-activity role access section is hidden when adding/editing an activity and only the site-wide matrix applies.';
$string['accessrole'] = 'Moodle role';
$string['accessfeature_join'] = 'Join meeting';
$string['accessfeature_recordings'] = 'View and play recordings';
$string['accessfeature_content'] = 'View and play content';
$string['accessfeature_editrecording'] = 'Edit recording name';
$string['accessfeature_adobeeditor'] = 'Edit recording in Adobe Connect';
$string['accessfeature_enterbeforehost'] = 'Bypass schedule / wait for host';
$string['accessmatrix_all'] = 'All';
$string['accessmatrix_toggle_row'] = 'Toggle all features for this role';
$string['accessmatrix_toggle_col'] = 'Toggle this feature for all roles';
$string['adobeeditor'] = 'Edit in Adobe Connect';
$string['defaultssettings'] = 'Meeting defaults';
$string['tab_meetingsettings'] = 'Meeting settings';
$string['tab_accesssettings'] = 'Access settings';
$string['roomdefaults'] = 'Room defaults';
$string['roomdefaults_desc'] = 'These values are used as form defaults for new “new meeting” and “server meetings” activities site-wide; each activity can still override them.';
$string['default_meetinglang'] = 'Default meeting language';
$string['default_meetinglang_desc'] = 'Default Adobe Connect room UI language for new activities across the site.';
$string['default_waitforhost'] = 'Block entry before host (site default)';
$string['default_waitforhost_desc'] = 'When enabled, new activities block non-host join until a host is present in the room (unless a role may enter early via the access matrix).';
$string['settingsheader'] = 'Adobe Connect connection';
$string['settingsversion'] = 'v{$a}';
$string['settings_connection'] = 'Server settings';
$string['settings_connection_desc'] = 'Adobe Connect server connection and admin account.';
$string['host'] = 'API host';
$string['host_desc'] = 'Full XML API endpoint, e.g. https://connect.example.edu/api/xml';
$string['meethost'] = 'Meeting domain';
$string['meethost_desc'] = 'Domain users open for meetings, e.g. connect.example.edu';
$string['port'] = 'Port';
$string['port_desc'] = 'Usually 443 for HTTPS';
$string['admin_login'] = 'Server admin email';
$string['admin_login_desc'] = 'Adobe Connect account email used for API calls';
$string['admin_password'] = 'Server admin password';
$string['admin_password_desc'] = 'Password for the server API admin account';
$string['admin_httpauth'] = 'HTTP authentication header';
$string['admin_httpauth_desc'] = 'Must match HTTP_AUTH_HEADER in Adobe Connect custom.ini (default: Generate-Safe-Random-Token)';
$string['email_login'] = 'Match legacy Connect accounts by email or username';
$string['email_login_desc'] = 'SSO normally signs users into Adobe Connect as mlu{userid}. Enable this when Connect accounts were originally created with each person\'s email address or Moodle username instead. The plugin will find those legacy accounts during join and link them to the current mlu{userid} login.';
$string['https'] = 'HTTPS connection';
$string['https_desc'] = 'Use HTTPS for API and meeting URLs';
$string['about_heading'] = 'About the plugin developer';
$string['about_title'] = 'MeetLet';
$string['about_body'] = 'MeetLet provides online classroom services and Adobe Connect infrastructure.';
$string['about_body_p1'] = 'MeetLet specialises in Adobe Connect-based online classroom infrastructure. From reliable hosting and performance tuning to operational support for universities, training centres and organisations that treat session quality as non-negotiable, we stay beside the teams that run live classes every day. We focus on the real classroom experience: fast join, stable audio and video, and tools that both instructors and learners actually need.';
$string['about_body_p2'] = 'This Marketplace edition connects Moodle to Adobe Connect for meeting creation, role mapping, SSO join, recordings and shared content.';
$string['about_body_p3'] = 'The MeetLet engineering team builds with a clear understanding of educational environments and the need for transparent UX, so the product stays dependable for site admins and simple for teachers. The MeetLet brand stands for responsiveness, infrastructure quality and hands-on support during real deployments, with a practical view of day-to-day online teaching needs.';
$string['about_body_p4'] = 'For hosting, deployment consulting and specialist support, visit the official website. This plugin is part of the MeetLet ecosystem for e-learning integration and is designed, maintained and updated with that same standard.';
$string['runtest'] = 'Run connection test';
$string['testrunning'] = 'Running test steps…';
$string['testwaiting'] = 'Waiting';
$string['testrunningstep'] = 'Testing';
$string['testskipped'] = 'Skipped';
$string['testprogress'] = 'Step {$a->current} of {$a->total} ({$a->percent}%)';
$string['conntesttitle'] = 'Adobe Connect connection test';
$string['conntestintro'] = 'These checks verify that Moodle can talk to your Adobe Connect server. Click the button below to show every step and follow live progress.';
$string['testok'] = 'Passed';
$string['testfail'] = 'Failed';
$string['testsession'] = 'Session key';
$string['testlogin'] = 'Admin login';
$string['testfolders'] = 'Shared / recordings / meetings folders';
$string['testcleanup'] = 'Remove test meeting and user';
$string['testuser'] = 'Create, assign and remove test user';
$string['testsso'] = 'Single sign-on (SSO)';
$string['testsso_adminok'] = 'Admin SSO succeeded';
$string['testsso_userok'] = 'Test-user SSO succeeded';
$string['testsso_userwarn'] = 'Test-user SSO warned (admin SSO infrastructure is healthy)';
$string['tabinfo'] = 'Overview';
$string['tabdetails'] = 'Session details';
$string['emptydetails'] = 'No description has been added for this session.';
$string['sessiondatetime'] = 'Session start';
$string['sessionend'] = 'Session end';
$string['sessiondetails'] = 'Actions';
$string['tabrecordings'] = 'Recordings';
$string['tabcontent'] = 'Content';
$string['joinmeeting'] = 'Join meeting';
$string['joining'] = 'Preparing a secure meeting session…';
$string['joiningtitle'] = 'Preparing meeting';
$string['preparingrecording'] = 'Preparing a secure recording session…';
$string['preparingrecordingtitle'] = 'Preparing recording';
$string['meetingdetails'] = 'Meeting details';
$string['meetingurl'] = 'Meeting URL';
$string['statusopen'] = 'Ready to join';
$string['statuslive'] = 'In progress';
$string['statusscheduled'] = 'Scheduled';
$string['statusended'] = 'Ended';
$string['statuswaitinghost'] = 'Waiting for host';
$string['statuschecking'] = 'Checking…';
$string['statushelp'] = 'Status is refreshed from the server every 15 seconds. If people are in the Adobe room it shows In progress, even after the scheduled end time.';
$string['statuschecking_help'] = 'Fetching room status from Adobe Connect. Join stays disabled until the result is known.';
$string['statuscountdown_help'] = 'Countdown until the next server status check. At zero, meeting status (for example Ended or Waiting for host) is refreshed.';
$string['meetingended'] = 'This meeting has ended. You cannot join.';
$string['meetingnotstarted'] = 'This meeting has not started yet.';
$string['joindeniedtitle'] = 'Join not allowed';
$string['joinblocked_waitinghost'] = 'You cannot join until the host/moderator starts the session (Waiting for moderator to start session).';
$string['noscormapping'] = 'No Adobe meeting is linked to this activity yet.';
$string['nomeeting'] = 'No meeting exists on the Adobe Connect server';
$string['notparticipant'] = 'You are not allowed to join this meeting';
$string['usergrouprequired'] = 'You must be a member of a group to join this meeting';
$string['norecordings'] = 'No recordings yet';
$string['nocontent'] = 'No uploaded content in this meeting';
$string['recordingname'] = 'Recording';
$string['play'] = 'Play';
$string['downloadcontent'] = 'Download';
$string['downloadcontentfailed'] = 'Content download failed. Please try again.';
$string['downloadcontenttimeout'] = 'Content download timed out. Please try again.';
$string['errorbadcontenttoken'] = 'This content download link is invalid or was issued for a different user.';
$string['duration'] = 'Duration';
$string['refresh'] = 'Refresh';
$string['refreshtab'] = 'Refresh';
$string['jobpollwait'] = 'Checking video status… next refresh in 1 minute';
$string['loading'] = 'Loading…';
$string['error'] = 'Something went wrong';
$string['erroremptyxml'] = 'Unable to reach Adobe Connect API';
$string['errorlogin'] = 'Adobe Connect admin login failed';
$string['errorhttpauth'] = 'Single sign-on to Adobe Connect failed.';
$string['errorhttpauth_hint_ip'] = 'Moodle egress IP that Adobe must trust: {$a}';
$string['error_user_unavailable'] = 'This meeting cannot be opened right now. Give this code to your site administrator: {$a}';
$string['error_helpcode_label'] = 'Help code';
$string['error_adobe_response'] = 'Adobe Connect response';
$string['error_see_serverguide'] = 'This code is explained on the plugin settings “Server setup guide” tab.';
$string['errorfact_login'] = 'Connect login';
$string['errorfact_adobe_code'] = 'Adobe code';
$string['errorfact_adobe_subcode'] = 'Adobe subcode';
$string['errorfact_egress_ip'] = 'Moodle egress IP';
$string['helpcode_sso_01_title'] = 'HTTP header single sign-on failed';
$string['helpcode_sso_01_fix'] = '<ol><li>Confirm <code>HTTP_AUTH_HEADER</code> in <code>custom.ini</code> matches the plugin setting.</li><li>Add this Moodle server’s public IP to <code>HTTP_AUTH_TRUSTED_HOSTS</code> (keep <code>127.0.0.1</code>).</li><li>Enable <code>HeaderAuthenticationFilter</code> in <code>web.xml</code> and do not ignore <code>/api/</code>.</li><li>Restart the <code>ConnectPro</code> service after changing trusted hosts.</li></ol>';
$string['helpcode_api_01_title'] = 'Adobe Connect API could not be reached';
$string['helpcode_api_01_fix'] = 'Check the plugin API URL, port, HTTPS, and firewall from the Moodle server to Adobe Connect.';
$string['helpcode_api_02_title'] = 'Adobe Connect administrator login failed';
$string['helpcode_api_02_fix'] = 'Check the plugin “Server admin account” email and password. The account must be able to call the XML API.';
$string['helpcode_usr_01_title'] = 'The Adobe Connect user could not be created or found';
$string['helpcode_usr_01_fix'] = 'Check the Moodle user’s email and that the Connect admin account can create users.';
$string['helpcode_mtg_01_title'] = 'The Adobe Connect meeting was not found';
$string['helpcode_mtg_01_fix'] = 'Open the activity settings and confirm the meeting still exists on the Connect server.';
$string['helpcode_cfg_01_title'] = 'The plugin is not configured yet';
$string['helpcode_cfg_01_fix'] = 'Complete Adobe Connect settings in Site administration and run the Connection test tab.';
$string['helpcode_err_01_title'] = 'Unexpected MeetLet error';
$string['helpcode_err_01_fix'] = 'Retry once. If it continues, check Moodle logs and the Connection test tab.';
$string['serverguide_errorcodes_title'] = 'Help codes reported by users';
$string['serverguide_errorcodes_intro'] = 'Students only see a short “cannot open” message plus one of these codes. Match the code here to see what to fix.';
$string['serverguide_errorcodes_col_code'] = 'Code';
$string['serverguide_errorcodes_col_meaning'] = 'Meaning';
$string['serverguide_errorcodes_col_fix'] = 'What to check';
$string['errorcreatemeeting'] = 'Could not create the Adobe Connect meeting';
$string['errorcreateuser'] = 'Could not create or locate your Adobe Connect user. Check the Moodle user email and that the server admin API account can create users.';
$string['errorexistingsco'] = 'The selected server meeting was not found. Choose a valid meeting from the list.';
$string['errorrenamerecording'] = 'Could not rename the recording';
$string['recordingrenamed'] = 'Recording renamed';
$string['editrecording'] = 'Edit recording name';
$string['recordingdate'] = 'Recording date';
$string['linkmode'] = 'Meeting connection mode';
$string['linkmode_help'] = 'Attach an existing Adobe Connect meeting from the server, or create a new one.';
$string['linkmode_create'] = 'Create a new meeting on the server';
$string['linkmode_existing'] = 'Existing meeting on server';
$string['existingscoid'] = 'Existing server meeting';
$string['chooseservermeeting'] = 'Select a meeting…';
$string['searchservermeetings'] = 'Search server meetings…';
$string['loadingmeetings'] = 'Loading meetings…';
$string['nomeetingsfound'] = 'No meetings found';
$string['meetinglang'] = 'Meeting language';
$string['meetinglang_help'] = 'Default Adobe Connect room UI language when the server supports it.';
$string['meetinglang_default'] = 'Server default';
$string['waitforhost'] = 'Block entry before host';
$string['waitforhost_help'] = 'Until a host is present in the room, others cannot join. Roles granted “Bypass schedule / wait for host” in the access matrix may bypass wait-for-host and also join when the meeting is scheduled or marked ended.';
$string['settingstate_inherit'] = 'Follow site';
$string['settingstate_inherit_on'] = 'Site: On';
$string['settingstate_inherit_off'] = 'Site: Off';
$string['settingstate_enable'] = 'On';
$string['settingstate_disable'] = 'Off';
$string['waitingforhost'] = 'The meeting has not been opened by a host yet. Please wait.';
$string['contenttype'] = 'Type';
$string['contentsize'] = 'Size';
$string['contentdate'] = 'Modified';
$string['contenticon_image'] = 'Image';
$string['contenticon_jpg'] = 'Image';
$string['contenticon_jpeg'] = 'Image';
$string['contenticon_png'] = 'Image';
$string['contenticon_gif'] = 'Image';
$string['contenticon_presentation'] = 'Presentation';
$string['contenticon_producer'] = 'Presentation';
$string['contenticon_ppt'] = 'Presentation';
$string['contenticon_pptx'] = 'Presentation';
$string['contenticon_pdf'] = 'PDF';
$string['contenticon_mp3'] = 'Audio';
$string['contenticon_mp4'] = 'Video';
$string['contenticon_flv'] = 'Video';
$string['contenticon_swf'] = 'Flash';
$string['contenticon_html'] = 'HTML';
$string['contenticon_zip'] = 'ZIP';
$string['contenticon_attachment'] = 'Attachment';
$string['contenticon_file'] = 'File';
$string['contenticon_content'] = 'Content';
$string['errornofolder'] = 'Could not find the Adobe Connect meetings folder';
$string['notconfigured'] = 'MeetLet is not configured yet. Ask an administrator to complete Adobe Connect settings.';
$string['privacy:metadata'] = 'MeetLet stores meeting mappings and recording metadata locally, and exchanges user profile fields with Adobe Connect to enable SSO.';
$string['privacy:metadata:meetletacbmarketplace'] = 'MeetLet activity instances stored in Moodle.';
$string['privacy:metadata:meetletacbmarketplace:userid'] = 'The user who created the activity instance.';
$string['privacy:metadata:meetletacbmarketplace:name'] = 'The activity name.';
$string['privacy:metadata:meetletacbmarketplace:intro'] = 'The activity description.';
$string['privacy:metadata:meetletacbmarketplace:participants'] = 'Role mapping rules, which may include specific Moodle user ids.';
$string['privacy:metadata:meetletacbmarketplace:timecreated'] = 'When the activity was created.';
$string['privacy:metadata:meetletacbmarketplace:timemodified'] = 'When the activity was last modified.';
$string['privacy:metadata:meetlet_marketplace_meetings'] = 'Adobe Connect meeting SCO mapping per Moodle group.';
$string['privacy:metadata:meetlet_marketplace_meetings:groupid'] = 'Moodle group linked to the Adobe Connect meeting.';
$string['privacy:metadata:meetlet_marketplace_meetings:meetingscoid'] = 'Adobe Connect meeting SCO id.';
$string['privacy:metadata:meetlet_marketplace_meetings:urlpath'] = 'Adobe Connect meeting URL path.';
$string['privacy:metadata:meetlet_marketplace_recordings'] = 'Cached recording and offline video metadata.';
$string['privacy:metadata:meetlet_marketplace_recordings:name'] = 'Recording title cached from Adobe Connect.';
$string['privacy:metadata:meetlet_marketplace_recordings:urlpath'] = 'Recording URL path.';
$string['privacy:metadata:meetlet_marketplace_recordings:jobstatus'] = 'Offline video job status.';
$string['privacy:metadata:adobeconnect'] = 'User name, email and login are sent to Adobe Connect for account provisioning and meeting access.';
$string['privacy:metadata:adobeconnect:firstname'] = 'User first name sent to Adobe Connect.';
$string['privacy:metadata:adobeconnect:lastname'] = 'User last name sent to Adobe Connect.';
$string['privacy:metadata:adobeconnect:email'] = 'User email sent to Adobe Connect.';
$string['privacy:metadata:adobeconnect:username'] = 'User login / username sent to Adobe Connect.';
$string['privacy:export:adobeconnect'] = 'Profile fields are also sent to Adobe Connect for SSO. MeetLet cannot delete accounts on the Adobe Connect server from Moodle.';
$string['search:activity'] = 'MeetLet activities';
$string['calendar'] = 'MeetLet meeting';
$string['view'] = 'View meeting';
$string['emptytab'] = 'Nothing to show';
$string['cachedef_folders'] = 'Adobe Connect folder sco-ids';
$string['cachedef_meetinginfo'] = 'Adobe Connect meeting info';
$string['cachedef_templates'] = 'Adobe Connect meeting templates';
$string['tasksync'] = 'Sync MeetLet recordings';
$string['brand'] = 'MeetLet';
$string['subtitle'] = 'Adobe Connect';
$string['featuresheading'] = 'Feature visibility';
$string['featuresheading_desc'] = 'Each section has two controls: site-wide visibility, and whether teachers may override it per activity.';
$string['featuregroup_recordingstab'] = 'Recordings tab';
$string['featuregroup_recordingstab_desc'] = 'Show or hide the recordings tab on the activity page.';
$string['featuregroup_contenttab'] = 'Content tab';
$string['featuregroup_contenttab_desc'] = 'Show or hide the meeting content tab.';
$string['enable_recordingstab'] = 'Show recordings tab';
$string['enable_recordingstab_desc'] = 'Master switch for the recordings tab. Roles still need “View and play recordings” in the access matrix.';
$string['allow_override_recordingstab'] = 'Allow per-activity recordings tab setting';
$string['allow_override_recordingstab_desc'] = 'Teachers may enable/disable the recordings tab for each activity.';
$string['enable_contenttab'] = 'Show content tab';
$string['enable_contenttab_desc'] = 'Master switch for the content tab. Roles still need “View and play content” in the access matrix.';
$string['allow_override_contenttab'] = 'Allow per-activity content tab setting';
$string['allow_override_contenttab_desc'] = 'Teachers may enable/disable the content tab for each activity.';
$string['showrecordingstab'] = 'Show recordings tab';
$string['showcontenttab'] = 'Show content tab';
$string['activityfeatures'] = 'Links and tabs visibility';
$string['featuredisabled'] = 'This section has been disabled by the site administrator.';
$string['tab_connectiontest'] = 'Connection test';
$string['tab_aboutdev'] = 'About the plugin developer';
$string['tab_serverguide'] = 'Server setup guide';
$string['serverguide_heading'] = 'Required Adobe Connect server settings';
$string['serverguide_intro'] = 'Only the files and lines needed for this plugin (SSO and HTTPS) on the Connect host. Restart the <code>ConnectPro</code> service after each change.';
$string['serverguide_match_title'] = 'Fields that must match the server';
$string['serverguide_match_intro'] = 'Set these on the <strong>Server settings</strong> tab. The examples below are placeholders — use your own Connect host and secrets.';
$string['serverguide_placeholder_httpauth'] = 'your-secret-header-value';
$string['serverguide_placeholder_apiurl'] = 'https://connect.example.edu/api/xml';
$string['serverguide_placeholder_meethost'] = 'connect.example.edu';
$string['serverguide_customini_title'] = 'custom.ini';
$string['serverguide_customini_body'] = '<p>Path: <code>C:\\Connect\\11.2.0\\custom.ini</code> (the version folder name may stay the same after a CPS patch).</p><ul><li><code>HTTP_AUTH_HEADER</code> = same as the plugin “HTTP authentication header”</li><li><code>HTTP_AUTH_TRUSTED_HOSTS</code> = <code>127.0.0.1</code> plus Moodle egress IP(s)</li><li><code>ADMIN_HOST</code> = meeting domain · for HTTPS: <code>ADMIN_PROTOCOL=https://</code> and <code>SSL_ONLY=yes</code></li></ul>';
$string['serverguide_customini_sample'] = 'ADMIN_HOST=connect.example.edu
ADMIN_PROTOCOL=https://
SSL_ONLY=yes
HTTP_AUTH_HEADER=your-secret-header-value
HTTP_AUTH_TRUSTED_HOSTS=127.0.0.1,::1,203.0.113.10';
$string['serverguide_webxml_title'] = 'web.xml — HeaderAuthenticationFilter';
$string['serverguide_webxml_body'] = '<p>Path: <code>C:\\Connect\\11.2.0\\appserv\\web\\WEB-INF\\web.xml</code></p><ul><li>Uncomment the <code>HeaderAuthenticationFilter</code> <code>&lt;filter&gt;</code> and <code>&lt;filter-mapping&gt;</code> blocks.</li><li>Do not list <code>/api/</code> in this filter’s <code>ignore-pattern</code> values. The plugin sends the user’s SSO login request to Adobe’s XML API URL; if <code>/api/</code> is ignored, SSO fails.</li><li>Keep the <code>NtlmAuthenticationFilter</code> block commented. That filter is for Windows / Active Directory (domain) login and is not required for this plugin. Uncomment it only if your organisation intentionally uses NTLM on Connect; otherwise leave it alone and keep HeaderAuthenticationFilter enabled.</li></ul>';
$string['serverguide_webxml_sample'] = '<!-- Keep HeaderAuthenticationFilter enabled for Moodle SSO.
Do NOT add /api/ to ignore-pattern values. -->
<filter>
<filter-name>HeaderAuthenticationFilter</filter-name>
<filter-class>com.macromedia.airspeed.servlet.filter.HeaderAuthenticationFilter</filter-class>
<init-param>
<param-name>ignore-pattern-0</param-name>
<param-value>/common/</param-value>
</init-param>
<init-param>
<param-name>ignore-pattern-1</param-name>
<param-value>/servlet/gateway/</param-value>
</init-param>
<init-param>
<param-name>ignore-pattern-2</param-name>
<param-value>/servlet/mirror</param-value>
</init-param>
<init-param>
<param-name>ignore-pattern-3</param-name>
<param-value>/servlet/testbuilder</param-value>
</init-param>
<init-param>
<param-name>ignore-pattern-4</param-name>
<param-value>/main</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>HeaderAuthenticationFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<!-- Leave NtlmAuthenticationFilter commented (Windows/AD login).
Example of what must stay commented unless you use NTLM on purpose:
<filter>
<filter-name>NtlmAuthenticationFilter</filter-name>
...
</filter>
-->';
$string['serverguide_serverxml_title'] = 'server.xml — SSL / HTTPS connectors';
$string['serverguide_serverxml_body'] = '<p>Path: <code>C:\\Connect\\11.2.0\\appserv\\conf\\server.xml</code></p><p>In the stock install file, <strong>two blocks</strong> marked <code>Uncomment for SSL support</code> are commented — uncomment both:</p><ol><li><code>&lt;Executor name=&quot;httpsThreadPool&quot; ...&gt;</code></li><li><code>&lt;Connector port=&quot;8443&quot; ...&gt;</code> (often with <code>SSLEnabled=&quot;false&quot;</code> when stunnel terminates TLS on 443)</li></ol><p>On the port <code>80</code> Connector keep <code>redirectPort=&quot;443&quot;</code>.</p>';
$string['serverguide_serverxml_sample'] = '<!-- 1) Uncomment for SSL support -->
<Executor name="httpsThreadPool"
namePrefix="https-8443-"
maxThreads="350"
minSpareThreads="25"/>
<!-- On the port 80 Connector, keep: -->
redirectPort="443"
<!-- 2) Uncomment for SSL support -->
<Connector port="8443" protocol="HTTP/1.1"
compression="on"
executor="httpsThreadPool"
enableLookups="false"
acceptCount="250"
connectionTimeout="20000"
SSLEnabled="false"
scheme="https"
secure="true"
proxyPort="443"
URIEncoding="utf-8"
relaxedQueryChars="{}|&lt;&gt;&quot;"/>';
$string['serverguide_upgrade_title'] = 'Note after a Connect upgrade / patch: ';
$string['serverguide_upgrade_body'] = '<ul><li>The file <code>appserv\\web\\WEB-INF\\web.xml</code> usually breaks after an upgrade; the updater often re-comments the <code>HeaderAuthenticationFilter</code> block. Uncomment that block again and remove <code>/api/</code> from the <code>ignore-pattern</code> list.</li><li>Open <code>custom.ini</code> and confirm that <code>HTTP_AUTH_HEADER</code> and <code>HTTP_AUTH_TRUSTED_HOSTS</code> are still set correctly.</li><li>Open <code>appserv\\conf\\server.xml</code> and confirm that both the <code>httpsThreadPool</code> block and the port <code>8443</code> Connector are still uncommented.</li><li>After you apply the fixes, restart the Windows <code>ConnectPro</code> service and run the Connection test tab in Moodle again.</li></ul>';
$string['tab_registration'] = 'Plugin activation';
$string['registration_required'] = 'This plugin requires free plugin activation before meetings, SSO join, recordings and other features can be used. A site administrator can activate under Site administration → Plugins → Activity modules → Adobe Connect → Plugin activation.';
$string['registration_heading'] = 'Plugin activation';
$string['registration_heading_desc'] = 'Activate this plugin with MeetLet to unlock meetings, SSO join, recordings sync and all Marketplace features. Activation is voluntary and happens only when you click the button below — nothing is sent automatically on install.';
$string['registration_gate_title'] = 'Plugin activation required';
$string['registration_gate_body'] = 'Meetings, SSO, recordings and other Adobe Connect features are locked until an administrator completes free plugin activation.';
$string['registration_gate_link'] = 'Open Plugin activation tab';
$string['registration_hero_notice'] = 'Core features are locked until you complete free plugin activation.';
$string['registration_why_title'] = 'Why activation is requested';
$string['registration_why'] = 'MeetLet asks for one-time plugin activation so we can deliver security updates, provide support when you need help, and understand free-edition usage. This edition does not use a paid license key.';
$string['registration_data_title'] = 'What is sent';
$string['registration_data_sent'] = 'When you activate, only the following technical and contact metadata is sent to MeetLet:';
$string['registration_data_item_domain'] = 'Site domain: {$a}';
$string['registration_data_item_moodle'] = 'Moodle version: {$a}';
$string['registration_data_item_plugin'] = 'Plugin version: {$a}';
$string['registration_data_item_installation'] = 'Installation ID: {$a}';
$string['registration_data_item_sitename'] = 'Site name: {$a}';
$string['registration_data_item_email'] = 'Administrator email (if available): {$a}';
$string['registration_data_optional'] = 'not sent';
$string['registration_privacy'] = 'For full details, see the {$a}.';
$string['registration_privacy_tablink'] = 'Privacy tab';
$string['tab_privacy'] = 'Privacy';
$string['privacy_tab_heading'] = 'Privacy policy — Marketplace edition';
$string['privacy_tab_intro'] = 'This policy describes how the MeetLet Adobe Connect Bridge plugin (Marketplace / free edition) handles personal and technical data when installed in Moodle. It applies to site administrators who configure the plugin and to end users who join Adobe Connect meetings through Moodle activities.';
$string['privacy_tab_effective'] = 'Effective date: September 2026. MeetLet may update this in-plugin policy when the plugin changes; the version installed on your site is the authoritative copy.';
$string['privacy_tab_scope_title'] = '1. Scope';
$string['privacy_tab_scope_body'] = '<p>This policy covers data processed by the <strong>mod_meetletacbmarketplace</strong> activity module and its site-wide administration settings. It does not replace your organisation\'s own privacy notices to learners, your Adobe Connect server operator\'s terms, or Moodle core privacy documentation.</p><p>MeetLet develops and maintains this plugin. For questions about this policy, contact <a href="mailto:info@meetlet.net">info@meetlet.net</a>.</p>';
$string['privacy_tab_registration_title'] = '2. Optional plugin activation';
$string['privacy_tab_registration_body'] = '<p>Plugin activation is <strong>voluntary</strong>. No data is sent to MeetLet until a site administrator explicitly clicks <em>Activate plugin</em> on the Plugin activation tab. Until then, the plugin does not contact the MeetLet activation service.</p><p>When an administrator activates the plugin, the following metadata may be transmitted to the MeetLet activation service:</p><ul><li>Public site URL / domain</li><li>A unique installation identifier generated by the plugin</li><li>Moodle platform name and release version</li><li>Plugin component name and release version</li><li>Site or organisation name (from Moodle site settings), if available</li><li>Site administrator or support contact email, if available in Moodle</li></ul><p>No learner personal data, course content, meeting recordings, or Adobe Connect credentials are included in activation requests.</p>';
$string['privacy_tab_purpose_title'] = '3. Purpose of activation data';
$string['privacy_tab_purpose_body'] = '<p>MeetLet uses activation metadata solely to:</p><ul><li>Identify your installation for support and troubleshooting when you contact us</li><li>Deliver security and compatibility updates relevant to your Moodle and plugin versions</li><li>Maintain aggregate, non-identifying statistics about free Marketplace edition adoption</li></ul><p>MeetLet does not use activation information to send promotional emails or make marketing contact without your request. Activating does not oblige you to purchase paid products.</p>';
$string['privacy_tab_service_title'] = '4. MeetLet activation service';
$string['privacy_tab_service_body'] = '<p>Activation data is sent over HTTPS to the <strong>MeetLet activation service</strong> endpoint configured on the Plugin activation tab (production default: MeetLet\'s hosted activation API). The service stores installation records linked to your installation ID and domain.</p><p>While activated, the plugin may send periodic heartbeat requests containing the same categories of metadata to confirm activation status. You can review the exact API URL in plugin settings; only administrators with site configuration rights can change it.</p>';
$string['privacy_tab_adobe_title'] = '5. Adobe Connect single sign-on (SSO)';
$string['privacy_tab_adobe_body'] = '<p>When users open or join a meeting, the plugin exchanges selected Moodle profile fields with the <strong>Adobe Connect server you configure</strong> (your own host or a host operated by your provider). This typically includes first name, last name, email address, and Moodle username/login so Adobe Connect can provision accounts and grant meeting access.</p><p>That transmission is directed to your Adobe Connect instance, not to MeetLet\'s activation service. MeetLet does not store Adobe Connect user accounts on MeetLet servers as part of this plugin.</p>';
$string['privacy_tab_local_title'] = '6. Data stored locally in Moodle';
$string['privacy_tab_local_body'] = '<p>The plugin stores the following in your Moodle database:</p><ul><li>Activity settings, meeting mappings, cached recording metadata, and optional per-activity participant rules</li><li>Activation status, installation ID, and cryptographic keys used for activation (when activated)</li></ul>';
$string['privacy_tab_retention_title'] = '7. Data retention';
$string['privacy_tab_retention_body'] = '<p><strong>Local Moodle data</strong> is retained until deleted through normal Moodle course/activity administration or Privacy API deletion requests.</p><p><strong>Activation records</strong> on the MeetLet activation service are retained while your plugin remains activated and for a reasonable period afterward to prevent abuse and support re-activation. When you deactivate via <em>Deactivate plugin</em>, the plugin stops sending heartbeats; MeetLet may retain historical activation logs in anonymised or aggregated form for security and statistics.</p><p>Data on your Adobe Connect server is governed by that server\'s retention policies, not by MeetLet.</p>';
$string['privacy_tab_sharing_title'] = '8. Sharing and sale of data';
$string['privacy_tab_sharing_body'] = '<p>MeetLet does <strong>not sell</strong> activation metadata or plugin usage data to third parties. Data is shared only as necessary to operate the activation service (e.g. hosting infrastructure) or when required by applicable law.</p><p>Adobe Connect SSO data is shared only with the Adobe Connect endpoint configured by your administrator.</p>';
$string['privacy_tab_control_title'] = '9. Administrator choices';
$string['privacy_tab_control_body'] = '<p>Site administrators can:</p><ul><li>Decline plugin activation and still read this policy before deciding</li><li>Deactivate at any time from the Plugin activation tab, which stops further activation traffic</li><li>Configure which Adobe Connect server receives SSO data</li><li>Use Moodle\'s Privacy API tools to export or delete user data held by this plugin</li></ul>';
$string['privacy_tab_contact_title'] = '10. Contact';
$string['privacy_tab_contact_body'] = '<p>For privacy questions, data subject requests relating to MeetLet activation records, or support regarding this plugin, contact MeetLet at <a href="mailto:info@meetlet.net">info@meetlet.net</a>.</p><p>For requests about data held on your Adobe Connect server, contact your Adobe Connect administrator or hosting provider.</p>';
$string['registration_product_free'] = 'Product: free-adobe-connect-bridge (Marketplace edition)';
$string['registration_activate'] = 'Activate plugin';
$string['registration_activate_confirm_ok'] = 'Activate plugin';
$string['registration_activate_confirm_lead'] = 'You are about to activate this plugin with MeetLet for the free Marketplace edition.';
$string['registration_activate_confirm_data'] = 'Only the metadata listed on this tab will be sent. After activation, all plugin features unlock.';
$string['registration_deactivate_confirm_ok'] = 'Deactivate';
$string['registration_deactivate_confirm_lead'] = 'Deactivate this plugin with MeetLet?';
$string['registration_deactivate_confirm_warning'] = 'All plugin features will be locked again until you re-activate.';
$string['registration_api_url'] = 'Activation API URL';
$string['registration_api_url_desc'] = 'MeetLet activation service base URL (no trailing slash). Production default: https://license.webatsign.com';
$string['registration_status_label'] = 'Activation status:';
$string['registration_status_active'] = 'Activated';
$string['registration_status_inactive'] = 'Not activated';
$string['registration_status_network_error'] = 'Activation server unreachable';
$string['registration_status_invalid_key'] = 'Activation invalid';
$string['registration_status_expired'] = 'Activation expired';
$string['registration_status_suspended'] = 'Activation suspended';
$string['registration_status_revoked'] = 'Activation revoked';
$string['registration_status_domain_mismatch'] = 'Domain not allowed';
$string['registration_status_activation_limit'] = 'Activation limit reached';
$string['registration_status_misconfigured'] = 'Activation misconfigured';
$string['registration_status_unknown'] = 'Activation error';
$string['registration_product_label'] = 'Product: Adobe Connect Bridge — Marketplace (free activation)';
$string['registration_domain'] = 'Site domain: {$a}';
$string['registration_installation'] = 'Installation ID: {$a}';
$string['registration_last_validated'] = 'Last checked with MeetLet: {$a}';
$string['registration_last_validated_never'] = 'Never';
$string['registration_activate_help'] = 'Send site metadata to MeetLet and activate this installation on the free Marketplace product.';
$string['registration_activate_confirm_title'] = 'Activate this plugin?';
$string['registration_activate_confirm_item_domain'] = 'Public site domain and a unique installation ID';
$string['registration_activate_confirm_item_plugin'] = 'Plugin component (mod_meetletacbmarketplace) and release version';
$string['registration_activate_confirm_item_contact'] = 'Site name and administrator contact email (for support statistics only)';
$string['registration_activate_confirm_optional'] = 'You can deactivate at any time. A daily scheduled task re-validates activation only while activated.';
$string['registration_recheck'] = 'Re-check activation';
$string['registration_recheck_help'] = 'Contact the MeetLet server to refresh activation status (does not re-activate).';
$string['registration_deactivate'] = 'Deactivate plugin';
$string['registration_deactivate_confirm'] = 'Remove this plugin activation from MeetLet? Plugin features will be locked again.';
$string['registration_deactivate_confirm_title'] = 'Deactivate plugin?';
$string['registration_modal_cancel'] = 'Cancel';
$string['registration_modal_confirm_activate'] = 'Activate plugin';
$string['registration_modal_confirm_deactivate'] = 'Deactivate';
$string['registration_modal_close'] = 'Close';
$string['registration_activated'] = 'Plugin activated successfully with MeetLet.';
$string['registration_rechecked'] = 'Activation status refreshed.';
$string['registration_deactivated'] = 'Plugin deactivated from MeetLet.';
$string['registration_already_active'] = 'This plugin is already activated.';
$string['registration_not_active'] = 'This plugin is not activated yet.';
$string['registration_request_id'] = 'request_id={$a}';
$string['registration_privacy_title'] = 'What is sent and why';
$string['registration_privacy_body'] = 'When you activate, MeetLet receives your site domain, installation ID, Moodle and plugin versions, and site contact details. Data is sent to {$a} for update notifications and aggregate support statistics only. No automatic contact occurs on install.';
$string['registration_err_invalid_key'] = 'Activation could not be validated.';
$string['registration_err_expired'] = 'Activation has expired.';
$string['registration_err_revoked'] = 'Activation was revoked.';
$string['registration_err_suspended'] = 'Activation is suspended.';
$string['registration_err_product_mismatch'] = 'Product configuration mismatch.';
$string['registration_err_domain'] = 'This site domain is not allowed for activation.';
$string['registration_err_activation_limit'] = 'Plugin activation limit reached.';
$string['registration_err_misconfigured'] = 'Activation request misconfigured.';
$string['registration_err_bad_signature'] = 'Invalid authorization signature from MeetLet.';
$string['registration_err_network'] = 'Could not reach the MeetLet activation server.';
$string['registration_err_unknown'] = 'An unknown activation error occurred.';
$string['registration_crypto_error'] = 'Activation cryptography error.';
$string['registration_sodium_required'] = 'PHP sodium extension is required for plugin activation.';
$string['task_registration_heartbeat'] = 'MeetLet plugin activation heartbeat';
$string['privacy:metadata:meetlet_marketplace_license'] = 'Optional MeetLet plugin activation identity stored locally when an administrator activates the plugin.';
$string['privacy:metadata:meetlet_marketplace_license:installation_id'] = 'Unique installation identifier generated by the plugin.';
$string['privacy:metadata:meetlet_marketplace_license:status'] = 'Last known activation status.';
$string['privacy:metadata:meetlet_marketplace_license:last_validated'] = 'When activation was last validated with MeetLet.';
$string['privacy:metadata:meetlet_registration'] = 'When an administrator opts in, site metadata is sent to the MeetLet activation service for update notices and support statistics.';
$string['privacy:metadata:meetlet_registration:domain'] = 'Public Moodle site domain.';
$string['privacy:metadata:meetlet_registration:installation_id'] = 'Unique installation identifier.';
$string['privacy:metadata:meetlet_registration:company'] = 'Site or organisation name.';
$string['privacy:metadata:meetlet_registration:email'] = 'Administrator or support contact email.';
$string['privacy:metadata:meetlet_registration:plugin'] = 'Moodle plugin component name.';
$string['privacy:metadata:meetlet_registration:plugin_release'] = 'Plugin release version.';
$string['privacy:metadata:meetlet_registration:platform'] = 'Platform name (moodle).';
$string['privacy:metadata:meetlet_registration:platform_version'] = 'Moodle release version.';
+572
View File
@@ -0,0 +1,572 @@
<?php
// This file is part of Moodle - http://moodle.org/
//
// Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* Persian language strings for mod_meetletacbmarketplace.
*
* @package mod_meetletacbmarketplace
* @copyright 2026 MeetLet <info@meetlet.net>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
defined('MOODLE_INTERNAL') || die();
$string['pluginname'] = 'پل ارتباطی ادوبی کانکت (نسخهٔ Marketplace)';
$string['modulename'] = 'ادوبی کانکت';
$string['modulenameplural'] = 'ادوبی کانکت';
$string['modulename_help'] = 'ایجاد یا اتصال جلسه Adobe Connect با ورود SSO، نگاشت نقش، ضبط‌ها و محتوای مشترک.';
$string['pluginadministration'] = 'مدیریت پل ارتباطی ادوبی کانکت (نسخهٔ Marketplace)';
$string['settingsintro'] = 'اتصال مودل به Adobe Connect برای ایجاد جلسه، ورود SSO، نگاشت نقش، ضبط‌ها و محتوا.';
$string['marketplace_commercial_note'] = 'گزارش حضور و غیاب، ویدیوی MP4 آفلاین، Agent ویندوز و پشتیبانی حرفه‌ای در نسخه تجاری MeetLet Adobe Connect Bridge موجود است.';
$string['about_visit_website'] = 'ورود به وب‌سایت MeetLet';
$string['marketplace_commercial_visit'] = 'meetlet.net';
$string['meetletacbmarketplace:addinstance'] = 'افزودن جلسه MeetLet';
$string['meetletacbmarketplace:view'] = 'مشاهده جلسه MeetLet';
$string['meetletacbmarketplace:join'] = 'پیوستن به جلسه MeetLet';
$string['meetletacbmarketplace:host'] = 'میزبان Adobe Connect';
$string['meetletacbmarketplace:presenter'] = 'ارائه‌دهنده Adobe Connect';
$string['meetletacbmarketplace:viewrecordings'] = 'مشاهده ضبط‌ها';
$string['meetletacbmarketplace:grade'] = 'نمره‌دهی فعالیت MeetLet';
$string['meetingname'] = 'نام جلسه';
$string['meetingintro'] = 'خلاصه جلسه';
$string['roomsettings'] = 'تنظیمات اتاق';
$string['meeturl'] = 'آدرس سفارشی جلسه';
$string['meeturl_help'] = 'مسیر اختیاری اتاق در Adobe Connect (فقط حروف، عدد و خط تیره). خالی بگذارید تا سرور خودش تعیین کند.';
$string['meetingtype'] = 'نوع دسترسی';
$string['public'] = 'عمومی';
$string['private'] = 'خصوصی';
$string['meettemplates'] = 'قالب جلسه';
$string['defaulttemplate'] = 'قالب پیش‌فرض';
$string['starttime'] = 'زمان شروع';
$string['endtime'] = 'زمان پایان';
$string['endtimeenable'] = 'تعیین زمان پایان';
$string['greaterstarttime'] = 'زمان پایان باید بعد از زمان شروع باشد';
$string['invalidurl'] = 'آدرس جلسه نامعتبر است. فقط حروف، عدد و خط تیره مجاز است و باید با حرف شروع شود.';
$string['rolemapping'] = 'نگاشت نقش‌ها';
$string['rolemapping_desc'] = 'یک قانون پیش‌فرض برای همه شرکت‌کنندگان تعریف کنید، سپس نقش/کاربرهای خاص را به میزبان یا ارائه‌دهنده نگاشت کنید. پیش‌فرض سراسری از تب «تنظیمات دسترسی» می‌آید و اینجا برای همین فعالیت قابل تغییر است.';
$string['rolemapping_mode'] = 'منبع نگاشت';
$string['rolemapping_mode_help'] = 'پیروی از سایت: نگاشت سراسری پلاگین (سازنده فعالیت میزبان). اختصاصی: تعریف قوانین نقش/کاربر فقط برای همین فعالیت.';
$string['rolemapping_mode_inherit'] = 'پیروی از نگاشت سراسری';
$string['rolemapping_mode_inherit_desc'] = 'از نگاشت سراسری پلاگین استفاده می‌شود و قانون کمکی میزبان بودن سازنده فعالیت هم اعمال می‌شود.';
$string['rolemapping_mode_override'] = 'تنظیم اختصاصی برای این فعالیت';
$string['rolemapping_mode_override_short'] = 'اختصاصی';
$string['rolemapping_mode_override_desc'] = 'قوانین نقش/کاربر فقط برای همین فعالیت به‌صورت دستی تعریف می‌شود.';
$string['siterolemapping'] = 'نگاشت نقش مودل به Adobe Connect';
$string['siterolemapping_desc'] = 'مشخص کنید هر نقش مودل هنگام ورود به جلسه یا کار با ادوبی، با کدام نقش Adobe Connect (میزبان / ارائه‌دهنده / شرکت‌کننده) وارد شود. این پیش‌فرض فعالیت‌های جدید است؛ در فرم هر فعالیت هم قابل بازنویسی است.';
$string['siterolemapping_defaultinfo'] = 'پیش‌فرض داخلی: مدیر، ایجادکننده درس و مدرس ویرایشگر = میزبان، مدرس = ارائه‌دهنده، بقیه = شرکت‌کننده';
$string['reset_rolemapping'] = 'بازگردانی به پیش‌فرض';
$string['reset_rolemapping_confirm_title'] = 'بازگردانی نگاشت نقش؟';
$string['reset_rolemapping_confirm'] = 'نگاشت داخلی مودل به Adobe Connect بازگردانده شود؟ نگاشت سفارشی شما جایگزین می‌شود.';
$string['reset_featureaccess'] = 'بازگردانی به پیش‌فرض';
$string['reset_featureaccess_confirm_title'] = 'بازگردانی دسترسی امکانات؟';
$string['reset_featureaccess_confirm'] = 'ماتریس داخلی دسترسی نقش‌ها به امکانات بازگردانده شود؟ دسترسی‌های سفارشی شما جایگزین می‌شوند.';
$string['accessreset_confirm_reset'] = 'بازگردانی به پیش‌فرض';
$string['accessreset_modal_cancel'] = 'انصراف';
$string['accessreset_modal_close'] = 'بستن';
$string['accessreset_modal_ok'] = 'تأیید';
$string['accessreset_busy'] = 'در حال بازگردانی پیش‌فرض…';
$string['reset_success_rolemapping'] = 'نگاشت نقش به پیش‌فرض داخلی بازگردانده شد.';
$string['reset_success_featureaccess'] = 'ماتریس دسترسی امکانات به پیش‌فرض داخلی بازگردانده شد.';
$string['reset_error'] = 'بازگردانی پیش‌فرض ممکن نشد. دوباره تلاش کنید.';
$string['adoberole'] = 'نقش Adobe Connect';
$string['participant_list'] = 'فهرست نقش‌ها در جلسه';
$string['participant_type_all'] = 'همه شرکت‌کنندگان';
$string['participant_type_role'] = 'نقش';
$string['participant_type_user'] = 'کاربر';
$string['participant_add'] = 'افزودن';
$string['participant_remove'] = 'حذف';
$string['participant_as'] = 'به‌عنوان';
$string['role_host'] = 'میزبان';
$string['role_presenter'] = 'ارائه‌دهنده';
$string['role_participant'] = 'شرکت‌کننده';
$string['allow_manual_offline'] = 'نمایش دکمه دانلود ویدیوی آفلاین جلسات ضبط شده';
$string['allow_manual_offline_desc'] = 'کنار هر ضبط دکمه‌ای برای درخواست ساخت ویدیوی آفلاین نشان داده شود.';
$string['server_group_api'] = 'اتصال API';
$string['server_group_api_desc'] = 'آدرس XML API و دامنه ورود به جلسات.';
$string['server_group_admin'] = 'حساب مدیر سرور';
$string['server_group_admin_desc'] = 'حساب مدیر Adobe Connect برای فراخوانی API.';
$string['featureaccess'] = 'دسترسی نقش‌ها به امکانات';
$string['featureaccess_desc'] = 'برای هر نقش مودل مشخص کنید کدام امکانات جلسه در دسترس باشد.';
$string['featureaccess_activity'] = 'دسترسی نقش‌ها به امکانات این فعالیت';
$string['featureaccess_override'] = 'بازنویسی دسترسی‌های سراسری برای این فعالیت';
$string['featureaccess_override_help'] = 'اگر فعال باشد، ماتریس زیر فقط برای همین فعالیت اعمال می‌شود. در غیر این صورت پیش‌فرض تنظیمات پلاگین استفاده می‌شود.';
$string['featureaccess_usesite'] = 'پیش‌فرض داخلی پلاگین';
$string['activity_featureaccess'] = 'نمایش ماتریس دسترسی در فرم فعالیت';
$string['activity_featureaccess_desc'] = 'اگر خاموش باشد، بخش «دسترسی نقش‌ها به امکانات این فعالیت» هنگام افزودن/ویرایش فعالیت نشان داده نمی‌شود و فقط ماتریس سراسری اعمال می‌شود.';
$string['accessrole'] = 'نقش مودل';
$string['accessfeature_join'] = 'ورود به جلسه';
$string['accessfeature_recordings'] = 'مشاهده و پخش ضبط‌ها';
$string['accessfeature_content'] = 'مشاهده و پخش محتوا';
$string['accessfeature_editrecording'] = 'ویرایش نام ضبط';
$string['accessfeature_adobeeditor'] = 'ویرایش ضبط در ادوبی کانکت';
$string['accessmatrix_all'] = 'همه';
$string['accessmatrix_toggle_row'] = 'فعال/غیرفعال کردن همه امکانات این نقش';
$string['accessmatrix_toggle_col'] = 'فعال/غیرفعال کردن این امکان برای همه نقش‌ها';
$string['adobeeditor'] = 'ویرایش در ادوبی کانکت';
$string['defaultssettings'] = 'پیش‌فرض‌های جلسه';
$string['tab_meetingsettings'] = 'تنظیمات جلسات';
$string['tab_accesssettings'] = 'تنظیمات دسترسی';
$string['roomdefaults'] = 'پیش‌فرض‌های اتاق جلسه';
$string['roomdefaults_desc'] = 'این مقادیر برای فعالیت‌های جدید هر دو نوع «جلسه جدید» و «جلسات سرور» به‌عنوان پیش‌فرض فرم اعمال می‌شوند؛ در هر فعالیت قابل تغییرند.';
$string['default_meetinglang'] = 'زبان پیش‌فرض جلسات';
$string['default_meetinglang_desc'] = 'زبان پیش‌فرض رابط اتاق Adobe Connect برای فعالیت‌های جدید سراسر سایت.';
$string['default_waitforhost'] = 'محدودیت ورود قبل از مدرس (پیش‌فرض سایت)';
$string['default_waitforhost_desc'] = 'اگر فعال باشد، در فعالیت‌های جدید تا حضور میزبان در اتاق، ورود دیگران مسدود می‌شود (مگر نقشی که در ماتریس اجازهٔ ورود زودتر داشته باشد).';
$string['settingsheader'] = 'اتصال Adobe Connect';
$string['settingsversion'] = 'نسخه {$a}';
$string['settings_connection'] = 'تنظیمات سرور';
$string['settings_connection_desc'] = 'اتصال به سرور Adobe Connect و حساب مدیر.';
$string['host'] = 'میزبان API';
$string['host_desc'] = 'آدرس کامل XML API، مثل https://connect.example.edu/api/xml';
$string['meethost'] = 'دامنه جلسات';
$string['meethost_desc'] = 'دامنه‌ای که کاربران برای ورود به جلسه باز می‌کنند، مثل connect.example.edu';
$string['port'] = 'پورت';
$string['port_desc'] = 'معمولاً ۴۴۳ برای HTTPS';
$string['admin_login'] = 'ایمیل مدیر سرور';
$string['admin_login_desc'] = 'ایمیل حساب Adobe Connect برای فراخوانی API';
$string['admin_password'] = 'رمز عبور مدیر سرور';
$string['admin_password_desc'] = 'رمز عبور حساب مدیر API روی سرور';
$string['admin_httpauth'] = 'هدر احراز هویت HTTP';
$string['admin_httpauth_desc'] = 'باید با HTTP_AUTH_HEADER در custom.ini ادوبی یکی باشد (پیش‌فرض: Generate-Safe-Random-Token)';
$string['email_login'] = 'تطبیق حساب قدیمی Connect با ایمیل یا نام کاربری';
$string['email_login_desc'] = 'در ورود SSO، کاربر معمولاً با شناسه mlu{userid} وارد Adobe Connect می‌شود. اگر قبلاً حساب‌های Connect با ایمیل یا نام کاربری مودل ساخته شده‌اند، این گزینه را فعال کنید تا هنگام ورود، همان حساب‌های قدیمی پیدا و به لاگین فعلی mlu{userid} وصل شوند.';
$string['https'] = 'اتصال HTTPS';
$string['https_desc'] = 'استفاده از HTTPS برای API و لینک جلسات';
$string['about_heading'] = 'دربارهٔ برنامه‌نویس پلاگین';
$string['about_title'] = 'MeetLet';
$string['about_body'] = 'MeetLet ارائه‌دهنده سرویس‌های کلاس آنلاین و زیرساخت Adobe Connect است.';
$string['about_body_p1'] = 'میت‌لت (MeetLet) ارائه‌دهنده تخصصی زیرساخت کلاس آنلاین مبتنی بر Adobe Connect است. از میزبانی پایدار و بهینه‌سازی عملکرد تا پشتیبانی عملیاتی برای دانشگاه‌ها، آموزشگاه‌ها و سازمان‌هایی که کیفیت جلسه برایشان خط قرمز است، کنارشان هستیم. تمرکز ما روی تجربه واقعی کلاس است: ورود سریع، پایداری تصویر و صدا، و ابزارهایی که مدرس و فراگیر هر دو به آن نیاز دارند.';
$string['about_body_p2'] = 'این نسخه Marketplace، مودل را به Adobe Connect برای ساخت جلسه، نگاشت نقش‌ها، ورود SSO، ضبط‌ها و محتوا وصل می‌کند.';
$string['about_body_p3'] = 'تیم توسعه MeetLet با درک عمیق از محدودیت‌های محیط‌های آموزشی ایران و نیاز به رابط کاربری شفاف، این محصول را طوری پیاده‌سازی کرده که هم برای مدیر سایت قابل اتکا باشد و هم برای مدرس ساده بماند. برند MeetLet یعنی پاسخ‌گویی، کیفیت زیرساخت، و همراهی فنی در مسیر استقرار واقعی، با نگاهی عملی به نیازهای روزمره آموزش آنلاین.';
$string['about_body_p4'] = 'برای آشنایی بیشتر با خدمات میزبانی Adobe Connect، مشاوره استقرار و پشتیبانی تخصصی می‌توانید از وب‌سایت رسمی دیدن کنید. این افزونه بخشی از اکوسیستم MeetLet برای یکپارچه‌سازی آموزش الکترونیکی است و با همین نگاه طراحی، نگهداری و به‌روزرسانی می‌شود.';
$string['runtest'] = 'اجرای تست اتصال';
$string['testrunning'] = 'در حال اجرای گام‌های تست…';
$string['testwaiting'] = 'در انتظار';
$string['testrunningstep'] = 'در حال تست';
$string['testskipped'] = 'رد شده';
$string['testprogress'] = 'مرحله {$a->current} از {$a->total} ({$a->percent}٪)';
$string['conntesttitle'] = 'تست اتصال ادوبی کانکت';
$string['conntestintro'] = 'این بررسی‌ها سلامت اتصال Moodle به سرور Adobe Connect را می‌سنجد. با زدن دکمه زیر، همه مراحل نمایش داده می‌شوند و پیشرفت هر گام به‌صورت زنده مشخص می‌گردد.';
$string['testok'] = 'موفق';
$string['testfail'] = 'ناموفق';
$string['testsession'] = 'کلید نشست';
$string['testlogin'] = 'ورود مدیر';
$string['testfolders'] = 'پوشه‌های مشترک / ضبط / جلسات';
$string['testcleanup'] = 'حذف جلسه و کاربر آزمایشی';
$string['testuser'] = 'ساخت، نقش‌دهی و حذف کاربر آزمایشی';
$string['testsso'] = 'ورود یکپارچه (SSO)';
$string['testsso_adminok'] = 'SSO مدیر موفق بود';
$string['testsso_userok'] = 'SSO کاربر آزمایشی موفق بود';
$string['testsso_userwarn'] = 'SSO کاربر آزمایشی هشدار داد (زیرساخت SSO مدیر سالم است)';
$string['tabinfo'] = 'نمای کلی';
$string['tabdetails'] = 'توضیحات جلسه';
$string['emptydetails'] = 'برای این جلسه توضیحی ثبت نشده است.';
$string['sessiondatetime'] = 'شروع جلسه';
$string['sessionend'] = 'پایان جلسه';
$string['sessiondetails'] = 'عملیات';
$string['tabrecordings'] = 'ضبط‌ها';
$string['tabcontent'] = 'محتوا';
$string['joinmeeting'] = 'ورود به جلسه';
$string['joining'] = 'در حال آماده‌سازی نشست امن جلسه…';
$string['joiningtitle'] = 'آماده‌سازی جلسه';
$string['preparingrecording'] = 'در حال آماده‌سازی نشست امن ضبط جلسه…';
$string['preparingrecordingtitle'] = 'آماده‌سازی ضبط جلسه';
$string['meetingdetails'] = 'جزئیات جلسه';
$string['meetingurl'] = 'آدرس جلسه';
$string['statusopen'] = 'آماده پیوستن';
$string['statuslive'] = 'در حال برگزاری';
$string['statusscheduled'] = 'زمان‌بندی‌شده';
$string['statusended'] = 'پایان‌یافته';
$string['statuswaitinghost'] = 'در انتظار مدرس';
$string['statuschecking'] = 'در حال بررسی…';
$string['statushelp'] = 'وضعیت هر ۱۵ ثانیه از سرور بررسی می‌شود. اگر کسی داخل اتاق Adobe باشد، حتی بعد از زمان پایان زمان‌بندی‌شده، وضعیت «در حال برگزاری» نشان داده می‌شود.';
$string['statuschecking_help'] = 'وضعیت اتاق از سرور Adobe در حال دریافت است. تا مشخص شدن نتیجه، ورود غیرفعال می‌ماند.';
$string['statuscountdown_help'] = 'شمارش معکوس تا بررسی دوبارهٔ وضعیت جلسه از سرور. وقتی به صفر برسد، وضعیت (مثلاً پایان‌یافته یا در انتظار مدرس) تازه می‌شود.';
$string['meetingended'] = 'این جلسه پایان یافته است و امکان ورود وجود ندارد.';
$string['meetingnotstarted'] = 'زمان شروع جلسه هنوز نرسیده است.';
$string['joindeniedtitle'] = 'ورود مجاز نیست';
$string['waitingforhost'] = 'جلسه هنوز توسط مدرس/میزبان باز نشده است. لطفاً صبر کنید.';
$string['noscormapping'] = 'هنوز جلسه‌ای در Adobe به این فعالیت وصل نشده است.';
$string['nomeeting'] = 'جلسه‌ای روی سرور Adobe Connect برای این فعالیت وجود ندارد';
$string['notparticipant'] = 'اجازه پیوستن به این جلسه را ندارید';
$string['usergrouprequired'] = 'برای پیوستن باید عضو یک گروه باشید';
$string['norecordings'] = 'هنوز ضبطی نیست';
$string['nocontent'] = 'محتوای آپلودشده‌ای در این جلسه نیست';
$string['recordingname'] = 'ضبط';
$string['play'] = 'پخش';
$string['downloadcontent'] = 'دانلود';
$string['downloadcontentfailed'] = 'دانلود محتوا ناموفق بود. لطفاً دوباره تلاش کنید.';
$string['downloadcontenttimeout'] = 'زمان دانلود محتوا به پایان رسید. لطفاً دوباره تلاش کنید.';
$string['errorbadcontenttoken'] = 'لینک دانلود محتوا نامعتبر است یا برای کاربر دیگری صادر شده است.';
$string['duration'] = 'مدت';
$string['refresh'] = 'بازنشانی';
$string['refreshtab'] = 'به‌روزرسانی';
$string['jobpollwait'] = 'در حال بررسی وضعیت ساخت… تا یک دقیقه دیگر تازه می‌شود';
$string['loading'] = 'در حال بارگذاری…';
$string['error'] = 'خطایی رخ داد';
$string['erroremptyxml'] = 'ارتباط با API ادوبی برقرار نشد';
$string['errorlogin'] = 'ورود مدیر Adobe Connect ناموفق بود';
$string['errorhttpauth'] = 'ورود یکپارچه به Adobe Connect ناموفق بود.';
$string['errorhttpauth_hint_ip'] = 'IP خروجی مودل که باید در trusted hosts ادوبی باشد: {$a}';
$string['error_user_unavailable'] = 'الان امکان باز شدن جلسه نیست. این کد را به مدیر سایت بدهید: {$a}';
$string['error_helpcode_label'] = 'کد راهنما';
$string['error_adobe_response'] = 'پاسخ Adobe Connect';
$string['error_see_serverguide'] = 'معنی این کد در تب «راهنمای سرور» تنظیمات پلاگین آمده است.';
$string['errorfact_login'] = 'لاگین Connect';
$string['errorfact_adobe_code'] = 'کد Adobe';
$string['errorfact_adobe_subcode'] = 'زیرکد Adobe';
$string['errorfact_egress_ip'] = 'IP خروجی مودل';
$string['helpcode_sso_01_title'] = 'ورود یکپارچه با هدر HTTP ناموفق بود';
$string['helpcode_sso_01_fix'] = '<ol><li>مطمئن شوید <code>HTTP_AUTH_HEADER</code> در <code>custom.ini</code> با تنظیم پلاگین یکی است.</li><li>IP عمومی همین سرور مودل را به <code>HTTP_AUTH_TRUSTED_HOSTS</code> اضافه کنید (<code>127.0.0.1</code> را نگه دارید).</li><li><code>HeaderAuthenticationFilter</code> را در <code>web.xml</code> فعال کنید و <code>/api/</code> را ignore نکنید.</li><li>پس از تغییر trusted hosts سرویس <code>ConnectPro</code> را ری‌استارت کنید.</li></ol>';
$string['helpcode_api_01_title'] = 'ارتباط با API ادوبی برقرار نشد';
$string['helpcode_api_01_fix'] = 'آدرس API، پورت، HTTPS و فایروال بین سرور مودل و Adobe Connect را بررسی کنید.';
$string['helpcode_api_02_title'] = 'ورود حساب مدیر Adobe Connect ناموفق بود';
$string['helpcode_api_02_fix'] = 'ایمیل و رمز «حساب مدیر سرور» در تنظیمات پلاگین را بررسی کنید. این حساب باید به XML API دسترسی داشته باشد.';
$string['helpcode_usr_01_title'] = 'ساخت یا یافتن کاربر روی Adobe Connect ممکن نشد';
$string['helpcode_usr_01_fix'] = 'ایمیل کاربر مودل را بررسی کنید و مطمئن شوید حساب مدیر ادوبی اجازه ساخت کاربر دارد.';
$string['helpcode_mtg_01_title'] = 'جلسه روی سرور Adobe Connect پیدا نشد';
$string['helpcode_mtg_01_fix'] = 'تنظیمات فعالیت را باز کنید و مطمئن شوید جلسه هنوز روی سرور ادوبی وجود دارد.';
$string['helpcode_cfg_01_title'] = 'پلاگین هنوز پیکربندی نشده است';
$string['helpcode_cfg_01_fix'] = 'تنظیمات Adobe Connect را در مدیریت سایت کامل کنید و تب «تست اتصال» را اجرا کنید.';
$string['helpcode_err_01_title'] = 'خطای پیش‌بینی‌نشدهٔ MeetLet';
$string['helpcode_err_01_fix'] = 'یک‌بار دوباره تلاش کنید. اگر تکرار شد، لاگ مودل و تب تست اتصال را ببینید.';
$string['serverguide_errorcodes_title'] = 'کدهای راهنمایی که کاربر می‌بیند';
$string['serverguide_errorcodes_intro'] = 'کاربر عادی فقط می‌فهمد جلسه باز نمی‌شود و یک کد می‌بیند. با تطبیق آن کد در این جدول مشخص می‌شود چه چیزی را باید بررسی کنید.';
$string['serverguide_errorcodes_col_code'] = 'کد';
$string['serverguide_errorcodes_col_meaning'] = 'معنی';
$string['serverguide_errorcodes_col_fix'] = 'چه چیزی را بررسی کنید';
$string['errorcreatemeeting'] = 'ساخت جلسه روی سرور Adobe Connect ممکن نشد';
$string['errorcreateuser'] = 'ساخت یا یافتن حساب شما روی سرور Adobe Connect ممکن نشد. ایمیل کاربر مودل را بررسی کنید و مطمئن شوید حساب «ایمیل مدیر سرور» اجازه ساخت کاربر دارد.';
$string['errorexistingsco'] = 'جلسه انتخاب‌شده روی سرور پیدا نشد. یک جلسه معتبر از فهرست انتخاب کنید.';
$string['errorrenamerecording'] = 'تغییر نام ضبط ممکن نشد';
$string['recordingrenamed'] = 'نام ضبط به‌روز شد';
$string['editrecording'] = 'ویرایش نام ضبط';
$string['recordingdate'] = 'تاریخ ضبط';
$string['linkmode'] = 'نحوه اتصال جلسه';
$string['linkmode_help'] = 'می‌توانید یکی از جلسات موجود روی سرور Adobe Connect را وصل کنید، یا جلسهٔ جدید بسازید.';
$string['linkmode_create'] = 'ساخت جلسه جدید روی سرور';
$string['linkmode_existing'] = 'جلسه موجود روی سرور';
$string['existingscoid'] = 'جلسه موجود روی سرور';
$string['chooseservermeeting'] = 'یک جلسه را انتخاب کنید…';
$string['searchservermeetings'] = 'جستجوی جلسه روی سرور…';
$string['loadingmeetings'] = 'در حال دریافت جلسات…';
$string['nomeetingsfound'] = 'جلسه‌ای پیدا نشد';
$string['meetinglang'] = 'زبان جلسه';
$string['meetinglang_help'] = 'زبان پیش‌فرض رابط اتاق Adobe Connect (در صورت پشتیبانی سرور).';
$string['meetinglang_default'] = 'پیش‌فرض سرور';
$string['waitforhost'] = 'محدودیت ورود قبل از مدرس';
$string['waitforhost_help'] = 'تا وقتی میزبان در اتاق حاضر نباشد، دیگران نمی‌توانند وارد شوند. نقش‌هایی که در ماتریس «عبور از زمان‌بندی / انتظار مدرس» دارند از این محدودیت و همچنین از وضعیت زمان‌بندی‌شده/پایان‌یافته مستثنی‌اند.';
$string['settingstate_inherit'] = 'پیروی از سایت';
$string['settingstate_inherit_on'] = 'سایت: روشن';
$string['settingstate_inherit_off'] = 'سایت: خاموش';
$string['settingstate_enable'] = 'روشن';
$string['settingstate_disable'] = 'خاموش';
$string['waitingforhost'] = 'جلسه هنوز توسط مدرس/میزبان باز نشده است. لطفاً صبر کنید.';
$string['joinblocked_waitinghost'] = 'تا شروع جلسه توسط مدرس/میزبان امکان ورود نیست (Waiting for moderator to start session).';
$string['accessfeature_enterbeforehost'] = 'عبور از زمان‌بندی / انتظار مدرس';
$string['contenttype'] = 'نوع';
$string['contentsize'] = 'حجم';
$string['contentdate'] = 'تاریخ اصلاح';
$string['contenticon_image'] = 'تصویر';
$string['contenticon_jpg'] = 'تصویر';
$string['contenticon_jpeg'] = 'تصویر';
$string['contenticon_png'] = 'تصویر';
$string['contenticon_gif'] = 'تصویر';
$string['contenticon_presentation'] = 'ارائه';
$string['contenticon_producer'] = 'ارائه';
$string['contenticon_ppt'] = 'ارائه';
$string['contenticon_pptx'] = 'ارائه';
$string['contenticon_pdf'] = 'PDF';
$string['contenticon_mp3'] = 'صوت';
$string['contenticon_mp4'] = 'ویدیو';
$string['contenticon_flv'] = 'ویدیو';
$string['contenticon_swf'] = 'فلش';
$string['contenticon_html'] = 'HTML';
$string['contenticon_zip'] = 'ZIP';
$string['contenticon_attachment'] = 'پیوست';
$string['contenticon_file'] = 'فایل';
$string['contenticon_content'] = 'محتوا';
$string['errornofolder'] = 'پوشه جلسات Adobe Connect پیدا نشد';
$string['notconfigured'] = 'اتصال Adobe Connect هنوز پیکربندی نشده است. از مدیر سایت بخواهید تنظیمات را کامل کند.';
$string['privacy:metadata'] = 'MeetLet نگاشت جلسات و متادیتای ضبط را محلی نگه می‌دارد و برای SSO فیلدهای پروفایل را با Adobe Connect مبادله می‌کند.';
$string['privacy:metadata:meetletacbmarketplace'] = 'نمونه‌های فعالیت MeetLet که در مودل ذخیره می‌شوند.';
$string['privacy:metadata:meetletacbmarketplace:userid'] = 'کاربری که نمونه فعالیت را ساخته است.';
$string['privacy:metadata:meetletacbmarketplace:name'] = 'نام فعالیت.';
$string['privacy:metadata:meetletacbmarketplace:intro'] = 'توضیح فعالیت.';
$string['privacy:metadata:meetletacbmarketplace:participants'] = 'قواعد نگاشت نقش که ممکن است شامل شناسه کاربران مودل باشد.';
$string['privacy:metadata:meetletacbmarketplace:timecreated'] = 'زمان ایجاد فعالیت.';
$string['privacy:metadata:meetletacbmarketplace:timemodified'] = 'زمان آخرین ویرایش فعالیت.';
$string['privacy:metadata:meetlet_marketplace_meetings'] = 'نگاشت SCO جلسه Adobe Connect به ازای هر گروه مودل.';
$string['privacy:metadata:meetlet_marketplace_meetings:groupid'] = 'گروه مودل متصل به جلسه Adobe Connect.';
$string['privacy:metadata:meetlet_marketplace_meetings:meetingscoid'] = 'شناسه SCO جلسه در Adobe Connect.';
$string['privacy:metadata:meetlet_marketplace_meetings:urlpath'] = 'مسیر URL جلسه Adobe Connect.';
$string['privacy:metadata:meetlet_marketplace_recordings'] = 'متادیتای کش‌شده ضبط و ساخت ویدیوی آفلاین.';
$string['privacy:metadata:meetlet_marketplace_recordings:name'] = 'عنوان ضبط کش‌شده از Adobe Connect.';
$string['privacy:metadata:meetlet_marketplace_recordings:urlpath'] = 'مسیر URL ضبط.';
$string['privacy:metadata:meetlet_marketplace_recordings:jobstatus'] = 'وضعیت جاب ساخت ویدیوی آفلاین.';
$string['privacy:metadata:adobeconnect'] = 'نام، ایمیل و لاگین کاربر برای ساخت حساب و دسترسی جلسه به Adobe Connect ارسال می‌شود.';
$string['privacy:metadata:adobeconnect:firstname'] = 'نام کاربر که به Adobe Connect ارسال می‌شود.';
$string['privacy:metadata:adobeconnect:lastname'] = 'نام خانوادگی کاربر که به Adobe Connect ارسال می‌شود.';
$string['privacy:metadata:adobeconnect:email'] = 'ایمیل کاربر که به Adobe Connect ارسال می‌شود.';
$string['privacy:metadata:adobeconnect:username'] = 'نام کاربری / لاگین که به Adobe Connect ارسال می‌شود.';
$string['privacy:export:adobeconnect'] = 'فیلدهای پروفایل برای SSO به Adobe Connect هم ارسال می‌شوند. MeetLet نمی‌تواند حساب‌های سرور Adobe Connect را از داخل مودل حذف کند.';
$string['search:activity'] = 'فعالیت‌های MeetLet';
$string['calendar'] = 'جلسه MeetLet';
$string['view'] = 'مشاهده جلسه';
$string['emptytab'] = 'موردی برای نمایش نیست';
$string['cachedef_folders'] = 'شناسه پوشه‌های Adobe Connect';
$string['cachedef_meetinginfo'] = 'اطلاعات جلسه Adobe Connect';
$string['cachedef_templates'] = 'قالب‌های جلسه Adobe Connect';
$string['tasksync'] = 'همگام‌سازی ضبط‌های MeetLet';
$string['brand'] = 'MeetLet';
$string['subtitle'] = 'Adobe Connect';
$string['featuresheading'] = 'نمایش بخش‌ها';
$string['featuresheading_desc'] = 'هر بخش دو تنظیم دارد: نمایش سراسری، و اجازه کنترل جداگانه در هر فعالیت.';
$string['featuregroup_recordingstab'] = 'تب ضبط‌ها';
$string['featuregroup_recordingstab_desc'] = 'نمایش یا مخفی‌سازی تب ضبط‌ها در صفحه فعالیت.';
$string['featuregroup_contenttab'] = 'تب محتوا';
$string['featuregroup_contenttab_desc'] = 'نمایش یا مخفی‌سازی تب محتوای جلسه.';
$string['enable_recordingstab'] = 'نمایش تب ضبط‌ها';
$string['enable_recordingstab_desc'] = 'کلید اصلی تب ضبط‌ها. نقش کاربر همچنان باید در ماتریس «مشاهده و پخش ضبط‌ها» را داشته باشد.';
$string['allow_override_recordingstab'] = 'اجازه تنظیم تب ضبط‌ها در هر فعالیت';
$string['allow_override_recordingstab_desc'] = 'مدرس بتواند برای هر جلسه نمایش تب ضبط‌ها را جداگانه کنترل کند.';
$string['enable_contenttab'] = 'نمایش تب محتوا';
$string['enable_contenttab_desc'] = 'کلید اصلی تب محتوا. نقش کاربر همچنان باید در ماتریس «مشاهده و پخش محتوا» را داشته باشد.';
$string['allow_override_contenttab'] = 'اجازه تنظیم تب محتوا در هر فعالیت';
$string['allow_override_contenttab_desc'] = 'مدرس بتواند برای هر جلسه نمایش تب محتوا را جداگانه کنترل کند.';
$string['showrecordingstab'] = 'نمایش تب ضبط‌ها';
$string['showcontenttab'] = 'نمایش تب محتوا';
$string['activityfeatures'] = 'نمایش لینک‌ها و تب‌ها';
$string['featuredisabled'] = 'این بخش توسط مدیر سایت غیرفعال شده است.';
$string['tab_connectiontest'] = 'تست اتصال';
$string['tab_aboutdev'] = 'دربارهٔ برنامه‌نویس پلاگین';
$string['tab_serverguide'] = 'راهنمای سرور';
$string['serverguide_heading'] = 'تنظیمات لازم روی سرور Adobe Connect';
$string['serverguide_intro'] = 'فقط فایل‌ها و خطوطی که برای کار پلاگین (SSO و HTTPS) باید روی میزبان Connect تنظیم شوند. بعد از هر تغییر، سرویس <code>ConnectPro</code> را ری‌استارت کنید.';
$string['serverguide_match_title'] = 'فیلدهایی که باید با سرور یکی باشند';
$string['serverguide_match_intro'] = 'این موارد را در تب <strong>تنظیمات سرور</strong> تنظیم کنید. مقادیر زیر فقط مثال هستند — میزبان Connect و مقادیر محرمانه خود را وارد کنید.';
$string['serverguide_placeholder_httpauth'] = 'your-secret-header-value';
$string['serverguide_placeholder_apiurl'] = 'https://connect.example.edu/api/xml';
$string['serverguide_placeholder_meethost'] = 'connect.example.edu';
$string['serverguide_customini_title'] = 'custom.ini';
$string['serverguide_customini_body'] = '<p>مسیر: <code>C:\\Connect\\11.2.0\\custom.ini</code> (نام پوشه نسخه ممکن است بعد از پچ عوض نشود).</p><ul><li><code>HTTP_AUTH_HEADER</code> = همان «هدر احراز هویت HTTP» در پلاگین</li><li><code>HTTP_AUTH_TRUSTED_HOSTS</code> = <code>127.0.0.1</code> و IP خروجی Moodle</li><li><code>ADMIN_HOST</code> = دامنه جلسه · برای HTTPS: <code>ADMIN_PROTOCOL=https://</code> و <code>SSL_ONLY=yes</code></li></ul>';
$string['serverguide_customini_sample'] = 'ADMIN_HOST=connect.example.edu
ADMIN_PROTOCOL=https://
SSL_ONLY=yes
HTTP_AUTH_HEADER=your-secret-header-value
HTTP_AUTH_TRUSTED_HOSTS=127.0.0.1,::1,203.0.113.10';
$string['serverguide_webxml_title'] = 'web.xml — HeaderAuthenticationFilter';
$string['serverguide_webxml_body'] = '<p>مسیر: <code>C:\\Connect\\11.2.0\\appserv\\web\\WEB-INF\\web.xml</code></p><ul><li>بلوک <code>HeaderAuthenticationFilter</code> (هم <code>&lt;filter&gt;</code> و هم <code>&lt;filter-mapping&gt;</code>) را از کامنت خارج کنید.</li><li>در <code>ignore-pattern</code>های این فیلتر، مسیر <code>/api/</code> را نگذارید. پلاگین برای ورود یکپارچه کاربر، درخواست را به آدرس XML API ادوبی می‌فرستد؛ اگر <code>/api/</code> ignore شود، SSO کار نمی‌کند.</li><li>بلوک <code>NtlmAuthenticationFilter</code> را کامنت‌شده نگه دارید. آن فیلتر برای ورود با حساب ویندوز/دامنه (Active Directory) است و برای این پلاگین لازم نیست. فقط اگر سازمان شما عمداً NTLM را روی Connect فعال کرده، آن را uncomment کنید؛ در غیر این صورت دست نزنید و HeaderAuthenticationFilter را فعال نگه دارید.</li></ul>';
$string['serverguide_webxml_sample'] = '<!-- Keep HeaderAuthenticationFilter enabled for Moodle SSO.
Do NOT add /api/ to ignore-pattern values. -->
<filter>
<filter-name>HeaderAuthenticationFilter</filter-name>
<filter-class>com.macromedia.airspeed.servlet.filter.HeaderAuthenticationFilter</filter-class>
<init-param>
<param-name>ignore-pattern-0</param-name>
<param-value>/common/</param-value>
</init-param>
<init-param>
<param-name>ignore-pattern-1</param-name>
<param-value>/servlet/gateway/</param-value>
</init-param>
<init-param>
<param-name>ignore-pattern-2</param-name>
<param-value>/servlet/mirror</param-value>
</init-param>
<init-param>
<param-name>ignore-pattern-3</param-name>
<param-value>/servlet/testbuilder</param-value>
</init-param>
<init-param>
<param-name>ignore-pattern-4</param-name>
<param-value>/main</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>HeaderAuthenticationFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<!-- Leave NtlmAuthenticationFilter commented (Windows/AD login).
Example of what must stay commented unless you use NTLM on purpose:
<filter>
<filter-name>NtlmAuthenticationFilter</filter-name>
...
</filter>
-->';
$string['serverguide_serverxml_title'] = 'server.xml — کانکتور SSL / HTTPS';
$string['serverguide_serverxml_body'] = '<p>مسیر: <code>C:\\Connect\\11.2.0\\appserv\\conf\\server.xml</code></p><p>در فایل پیش‌فرض نصب، <strong>دو بلوک</strong> با برچسب <code>Uncomment for SSL support</code> کامنت‌اند و هر دو باید uncomment شوند:</p><ol><li><code>&lt;Executor name=&quot;httpsThreadPool&quot; ...&gt;</code></li><li><code>&lt;Connector port=&quot;8443&quot; ...&gt;</code> (معمولاً با <code>SSLEnabled=&quot;false&quot;</code> وقتی stunnel روی ۴۴۳ TLS را تمام می‌کند)</li></ol><p>روی Connector پورت <code>80</code> هم <code>redirectPort=&quot;443&quot;</code> باشد.</p>';
$string['serverguide_serverxml_sample'] = '<!-- 1) Uncomment for SSL support -->
<Executor name="httpsThreadPool"
namePrefix="https-8443-"
maxThreads="350"
minSpareThreads="25"/>
<!-- On the port 80 Connector, keep: -->
redirectPort="443"
<!-- 2) Uncomment for SSL support -->
<Connector port="8443" protocol="HTTP/1.1"
compression="on"
executor="httpsThreadPool"
enableLookups="false"
acceptCount="250"
connectionTimeout="20000"
SSLEnabled="false"
scheme="https"
secure="true"
proxyPort="443"
URIEncoding="utf-8"
relaxedQueryChars="{}|&lt;&gt;&quot;"/>';
$string['serverguide_upgrade_title'] = 'نکته بعد از آپدیت / پچ Connect: ';
$string['serverguide_upgrade_body'] = '<ul><li>فایل <code>appserv\\web\\WEB-INF\\web.xml</code> معمولاً بعد از آپدیت خراب می‌شود؛ آپدیت کننده اغلب بلوک <code>HeaderAuthenticationFilter</code> را دوباره کامنت می‌کند. آن بلوک را دوباره از کامنت خارج کنید و مسیر <code>/api/</code> را از فهرست <code>ignore-pattern</code> حذف کنید.</li><li>فایل <code>custom.ini</code> را باز کنید و مطمئن شوید مقادیر <code>HTTP_AUTH_HEADER</code> و <code>HTTP_AUTH_TRUSTED_HOSTS</code> هنوز درست و کامل هستند.</li><li>فایل <code>appserv\\conf\\server.xml</code> را باز کنید و مطمئن شوید هر دو بلوک <code>httpsThreadPool</code> و Connector پورت <code>8443</code> هنوز از حالت کامنت خارج مانده‌اند.</li><li>بعد از اعمال اصلاحات، سرویس ویندوز <code>ConnectPro</code> را ری‌استارت کنید و در مودل تب «تست اتصال» را دوباره اجرا کنید.</li></ul>';
$string['tab_registration'] = 'فعال‌سازی پلاگین';
$string['registration_required'] = 'این افزونه قبل از استفاده از جلسات، ورود SSO، ضبط‌ها و سایر امکانات به فعال‌سازی رایگان پلاگین نیاز دارد. مدیر سایت می‌تواند از مسیر مدیریت سایت ← افزونه‌ها ← ماژول‌های فعالیت ← Adobe Connect ← فعال‌سازی پلاگین اقدام کند.';
$string['registration_heading'] = 'فعال‌سازی پلاگین';
$string['registration_heading_desc'] = 'برای باز شدن جلسات، SSO، همگام‌سازی ضبط‌ها و همه امکانات Marketplace، این افزونه را در MeetLet فعال کنید. فعال‌سازی داوطلبانه است و فقط با کلیک روی دکمه زیر انجام می‌شود — هیچ داده‌ای به‌صورت خودکار هنگام نصب ارسال نمی‌شود.';
$string['registration_gate_title'] = 'فعال‌سازی پلاگین لازم است';
$string['registration_gate_body'] = 'تا زمانی که مدیر فعال‌سازی رایگان پلاگین را انجام ندهد، جلسات، SSO، ضبط‌ها و سایر امکانات Adobe Connect قفل هستند.';
$string['registration_gate_link'] = 'رفتن به تب فعال‌سازی پلاگین';
$string['registration_hero_notice'] = 'تا تکمیل فعال‌سازی رایگان پلاگین، امکانات اصلی قفل هستند.';
$string['registration_why_title'] = 'چرا فعال‌سازی کنیم؟';
$string['registration_why'] = 'MeetLet از فعال‌سازی داوطلبانه پلاگین برای ارائه به‌روزرسانی امنیتی، پشتیبانی در صورت نیاز و آمار نسخه رایگان استفاده می‌کند. این نسخه کلید لایسنس پولی ندارد.';
$string['registration_data_title'] = 'چه داده‌ای ارسال می‌شود';
$string['registration_data_sent'] = 'با فعال‌سازی، فقط متادیتای فنی و تماس زیر به MeetLet ارسال می‌شود:';
$string['registration_data_item_domain'] = 'دامنه سایت: {$a}';
$string['registration_data_item_moodle'] = 'نسخه مودل: {$a}';
$string['registration_data_item_plugin'] = 'نسخه افزونه: {$a}';
$string['registration_data_item_installation'] = 'شناسه نصب: {$a}';
$string['registration_data_item_sitename'] = 'نام سایت: {$a}';
$string['registration_data_item_email'] = 'ایمیل مدیر (در صورت موجود بودن): {$a}';
$string['registration_data_optional'] = 'ارسال نمی‌شود';
$string['registration_privacy'] = '{$a}';
$string['registration_privacy_tablink'] = 'جزئیات در تب حریم خصوصی';
$string['tab_privacy'] = 'حریم خصوصی';
$string['privacy_tab_heading'] = 'سیاست حریم خصوصی — نسخه Marketplace';
$string['privacy_tab_intro'] = 'این سیاست نحوه پردازش داده‌های فنی و شخصی توسط افزونه پل Adobe Connect میت‌لت (نسخه Marketplace / رایگان) در مودل را توضیح می‌دهد. شامل مدیرانی است که افزونه را پیکربندی می‌کنند و کاربرانی که از طریق فعالیت‌های مودل به جلسات Adobe Connect می‌پیوندند.';
$string['privacy_tab_effective'] = 'تاریخ اجرا: شهریور ۱۴۰۵ (سپتامبر ۲۰۲۶). میت‌لت ممکن است این سیاست درون‌افزونه‌ای را هنگام به‌روزرسانی افزونه اصلاح کند؛ نسخه نصب‌شده روی سایت شما مرجع است.';
$string['privacy_tab_scope_title'] = '۱. حوزه شمول';
$string['privacy_tab_scope_body'] = '<p>این سیاست داده‌های پردازش‌شده توسط ماژول فعالیت <strong>mod_meetletacbmarketplace</strong> و تنظیمات سراسری آن را پوشش می‌دهد. جایگزین اعلامیه حریم خصوصی سازمان شما نسبت به فراگیران، شرایط اپراتور سرور Adobe Connect، یا مستندات حریم خصوصی هسته مودل نیست.</p><p>میت‌لت (MeetLet) این افزونه را توسعه و نگهداری می‌کند. برای پرسش درباره این سیاست با <a href="mailto:info@meetlet.net">info@meetlet.net</a> تماس بگیرید.</p>';
$string['privacy_tab_registration_title'] = '۲. فعال‌سازی اختیاری پلاگین';
$string['privacy_tab_registration_body'] = '<p>فعال‌سازی پلاگین <strong>اختیاری</strong> است. تا زمانی که مدیر سایت صریحاً روی <em>فعال‌سازی پلاگین</em> در تب فعال‌سازی پلاگین کلیک نکند، هیچ داده‌ای به میت‌لت ارسال نمی‌شود و افزونه با سرویس فعال‌سازی میت‌لت تماس نمی‌گیرد.</p><p>هنگام فعال‌سازی، متادیتای زیر ممکن است به <strong>سرویس فعال‌سازی میت‌لت</strong> ارسال شود:</p><ul><li>آدرس/دامنه عمومی سایت</li><li>شناسه یکتای نصب تولیدشده توسط افزونه</li><li>نام و نسخه انتشار مودل</li><li>نام کامپوننت و نسخه انتشار افزونه</li><li>نام سایت یا سازمان (از تنظیمات مودل)، در صورت موجود بودن</li><li>ایمیل مدیر یا پشتیبانی سایت، در صورت موجود بودن در مودل</li></ul><p>داده شخصی فراگیران، محتوای درس، ضبط جلسات یا اعتبارنامه Adobe Connect در درخواست‌های فعال‌سازی گنجانده نمی‌شود.</p>';
$string['privacy_tab_purpose_title'] = '۳. هدف از داده‌های فعال‌سازی';
$string['privacy_tab_purpose_body'] = '<p>میت‌لت از متادیتای فعال‌سازی صرفاً برای موارد زیر استفاده می‌کند:</p><ul><li>شناسایی نصب شما برای پشتیبانی و عیب‌یابی هنگام تماس با ما</li><li>ارائه به‌روزرسانی‌های امنیتی و سازگاری متناسب با نسخه مودل و افزونه</li><li>نگهداری آمار تجمیعی و غیرشناسا از پذیرش نسخه رایگان Marketplace</li></ul><p>میت‌لت از اطلاعات فعال‌سازی برای ارسال ایمیل تبلیغاتی یا تماس بازاریابی بدون درخواست شما استفاده نمی‌کند. فعال‌سازی شما را ملزم به خرید محصولات پولی نمی‌کند.</p>';
$string['privacy_tab_service_title'] = '۴. سرویس فعال‌سازی میت‌لت';
$string['privacy_tab_service_body'] = '<p>داده‌های فعال‌سازی از طریق HTTPS به نقطه پایانی <strong>سرویس فعال‌سازی میت‌لت</strong> که در تب فعال‌سازی پلاگین پیکربندی شده ارسال می‌شود (پیش‌فرض تولید: API فعال‌سازی میزبانی‌شده میت‌لت). این سرویس رکوردهای نصب مرتبط با شناسه نصب و دامنه شما را نگه می‌دارد.</p><p>در حالت فعال‌شده، افزونه ممکن است درخواست‌های ضربان دوره‌ای با همان دسته‌های متادیتا برای تأیید وضعیت فعال‌سازی ارسال کند. آدرس دقیق API در تنظیمات افزونه قابل مشاهده است؛ فقط مدیران دارای حق پیکربندی سایت می‌توانند آن را تغییر دهند.</p>';
$string['privacy_tab_adobe_title'] = '۵. ورود یکپارچه Adobe Connect (SSO)';
$string['privacy_tab_adobe_body'] = '<p>هنگام ورود یا پیوستن به جلسه، افزونه فیلدهای انتخاب‌شده پروفایل مودل را با <strong>سرور Adobe Connectی که شما پیکربندی می‌کنید</strong> (میزبان خودتان یا میزبان ارائه‌دهنده) مبادله می‌کند. معمولاً شامل نام، نام خانوادگی، ایمیل و نام کاربری/لاگین مودل است تا Adobe Connect حساب بسازد و دسترسی جلسه بدهد.</p><p>این ارسال به نمونه Adobe Connect شما هدایت می‌شود، نه به سرویس فعال‌سازی میت‌لت. میت‌لت حساب‌های کاربری Adobe Connect را روی سرورهای خود ذخیره نمی‌کند.</p>';
$string['privacy_tab_local_title'] = '۶. داده ذخیره‌شده محلی در مودل';
$string['privacy_tab_local_body'] = '<p>افزونه موارد زیر را در پایگاه داده مودل شما نگه می‌دارد:</p><ul><li>تنظیمات فعالیت، نگاشت جلسات، متادیتای کش‌شده ضبط و قواعد اختیاری شرکت‌کنندگان</li><li>وضعیت فعال‌سازی، شناسه نصب و کلیدهای رمزنگاری فعال‌سازی (پس از فعال‌سازی)</li></ul>';
$string['privacy_tab_retention_title'] = '۷. نگهداری داده';
$string['privacy_tab_retention_body'] = '<p><strong>داده محلی مودل</strong> تا زمان حذف از طریق مدیریت عادی درس/فعالیت یا درخواست‌های حذف Privacy API نگه داشته می‌شود.</p><p><strong>رکوردهای فعال‌سازی</strong> در سرویس فعال‌سازی میت‌لت تا زمانی که پلاگین فعال‌شده بماند و مدت معقول پس از آن برای جلوگیری از سوءاستفاده و پشتیبانی فعال‌سازی مجدد نگه داشته می‌شوند. با <em>غیرفعال‌سازی پلاگین</em>، افزونه ارسال ضربان را متوقف می‌کند؛ میت‌لت ممکن است گزارش‌های تاریخی فعال‌سازی را به‌صورت ناشناس یا تجمیعی برای امنیت و آمار نگه دارد.</p><p>داده روی سرور Adobe Connect شما تابع سیاست نگهداری همان سرور است، نه میت‌لت.</p>';
$string['privacy_tab_sharing_title'] = '۸. اشتراک‌گذاری و فروش داده';
$string['privacy_tab_sharing_body'] = '<p>میت‌لت متادیتای فعال‌سازی یا داده استفاده از افزونه را به اشخاص ثالث <strong>نمی‌فروشد</strong>. داده فقط در حد لازم برای به‌کار انداختن سرویس فعال‌سازی (مثلاً زیرساخت میزبانی) یا در صورت الزام قانون به اشتراک گذاشته می‌شود.</p><p>داده SSO Adobe Connect فقط با نقطه پایانی Adobe Connectی که مدیر شما پیکربندی کرده به اشتراک گذاشته می‌شود.</p>';
$string['privacy_tab_control_title'] = '۹. انتخاب‌های مدیر';
$string['privacy_tab_control_body'] = '<p>مدیران سایت می‌توانند:</p><ul><li>از فعال‌سازی پلاگین خودداری کنند و پیش از تصمیم این سیاست را بخوانند</li><li>هر زمان از تب فعال‌سازی پلاگین غیرفعال کنند تا ترافیک فعال‌سازی متوقف شود</li><li>مشخص کنند کدام سرور Adobe Connect داده SSO را دریافت کند</li><li>از ابزارهای Privacy API مودل برای صادرات یا حذف داده کاربران نگه‌داشته‌شده توسط این افزونه استفاده کنند</li></ul>';
$string['privacy_tab_contact_title'] = '۱۰. تماس';
$string['privacy_tab_contact_body'] = '<p>برای پرسش حریم خصوصی، درخواست‌های مربوط به رکوردهای فعال‌سازی میت‌لت یا پشتیبانی این افزونه با میت‌لت در <a href="mailto:info@meetlet.net">info@meetlet.net</a> تماس بگیرید.</p><p>برای درخواست‌های مربوط به داده روی سرور Adobe Connect خود، با مدیر یا میزبان Adobe Connect تماس بگیرید.</p>';
$string['registration_product_free'] = 'محصول: free-adobe-connect-bridge (نسخه Marketplace)';
$string['registration_activate'] = 'فعال‌سازی پلاگین';
$string['registration_activate_confirm_ok'] = 'فعال‌سازی';
$string['registration_activate_confirm_lead'] = 'در حال فعال‌سازی این افزونه در MeetLet برای نسخه رایگان Marketplace هستید.';
$string['registration_activate_confirm_data'] = 'فقط متادیتای فهرست‌شده در این تب ارسال می‌شود. پس از فعال‌سازی، همه امکانات افزونه باز می‌شوند.';
$string['registration_deactivate_confirm_ok'] = 'غیرفعال‌سازی';
$string['registration_deactivate_confirm_lead'] = 'فعال‌سازی این افزونه در MeetLet لغو شود؟';
$string['registration_deactivate_confirm_warning'] = 'جلسات، SSO، ضبط‌ها و سایر امکانات دوباره قفل می‌شوند تا فعال‌سازی مجدد انجام شود.';
$string['registration_api_url'] = 'آدرس API فعال‌سازی';
$string['registration_api_url_desc'] = 'آدرس پایه سرویس فعال‌سازی MeetLet (بدون / انتهایی). پیش‌فرض: https://license.webatsign.com';
$string['registration_status_label'] = 'وضعیت فعال‌سازی:';
$string['registration_status_active'] = 'فعال‌شده';
$string['registration_status_inactive'] = 'فعال نشده';
$string['registration_status_network_error'] = 'سرور فعال‌سازی در دسترس نیست';
$string['registration_status_invalid_key'] = 'فعال‌سازی نامعتبر';
$string['registration_status_expired'] = 'فعال‌سازی منقضی شده';
$string['registration_status_suspended'] = 'فعال‌سازی معلق';
$string['registration_status_revoked'] = 'فعال‌سازی لغو شده';
$string['registration_status_domain_mismatch'] = 'دامنه مجاز نیست';
$string['registration_status_activation_limit'] = 'سقف فعال‌سازی';
$string['registration_status_misconfigured'] = 'پیکربندی فعال‌سازی نادرست';
$string['registration_status_unknown'] = 'خطای فعال‌سازی';
$string['registration_product_label'] = 'محصول: Adobe Connect Bridge — Marketplace (فعال‌سازی رایگان)';
$string['registration_domain'] = 'دامنه سایت: {$a}';
$string['registration_installation'] = 'شناسه نصب: {$a}';
$string['registration_last_validated'] = 'آخرین بررسی با MeetLet: {$a}';
$string['registration_last_validated_never'] = 'هرگز';
$string['registration_activate_help'] = 'ارسال متادیتای سایت به MeetLet و فعال‌سازی این نصب روی محصول رایگان Marketplace.';
$string['registration_activate_confirm_title'] = 'این افزونه فعال شود؟';
$string['registration_activate_confirm_item_domain'] = 'دامنه عمومی سایت و شناسه یکتای نصب';
$string['registration_activate_confirm_item_plugin'] = 'کامپوننت افزونه (mod_meetletacbmarketplace) و نسخه انتشار';
$string['registration_activate_confirm_item_contact'] = 'نام سایت و ایمیل تماس مدیر (فقط برای آمار پشتیبانی)';
$string['registration_activate_confirm_optional'] = 'هر زمان می‌توانید غیرفعال کنید. وظیفه زمان‌بندی‌شده روزانه فقط در صورت فعال‌سازی، وضعیت را تازه می‌کند.';
$string['registration_recheck'] = 'بررسی مجدد فعال‌سازی';
$string['registration_recheck_help'] = 'تماس با سرور MeetLet برای به‌روزرسانی وضعیت فعال‌سازی (بدون فعال‌سازی مجدد).';
$string['registration_deactivate'] = 'غیرفعال‌سازی پلاگین';
$string['registration_deactivate_confirm'] = 'فعال‌سازی این افزونه در MeetLet حذف شود؟ امکانات افزونه دوباره قفل می‌شوند.';
$string['registration_deactivate_confirm_title'] = 'پلاگین غیرفعال شود؟';
$string['registration_modal_cancel'] = 'انصراف';
$string['registration_modal_confirm_activate'] = 'فعال‌سازی';
$string['registration_modal_confirm_deactivate'] = 'غیرفعال‌سازی';
$string['registration_modal_close'] = 'بستن';
$string['registration_activated'] = 'افزونه با موفقیت در MeetLet فعال شد.';
$string['registration_rechecked'] = 'وضعیت فعال‌سازی به‌روزرسانی شد.';
$string['registration_deactivated'] = 'فعال‌سازی افزونه از MeetLet حذف شد.';
$string['registration_already_active'] = 'این افزونه قبلاً فعال شده است.';
$string['registration_not_active'] = 'این افزونه هنوز فعال نشده است.';
$string['registration_request_id'] = 'request_id={$a}';
$string['registration_privacy_title'] = 'چه داده‌ای ارسال می‌شود و چرا';
$string['registration_privacy_body'] = 'با فعال‌سازی، MeetLet دامنه سایت، شناسه نصب، نسخه مودل و افزونه و اطلاعات تماس سایت را دریافت می‌کند. داده‌ها به {$a} فقط برای اعلان به‌روزرسانی و آمار پشتیبانی ارسال می‌شوند. هنگام نصب هیچ تماس خودکاری انجام نمی‌شود.';
$string['registration_err_invalid_key'] = 'فعال‌سازی تأیید نشد.';
$string['registration_err_expired'] = 'فعال‌سازی منقضی شده است.';
$string['registration_err_revoked'] = 'فعال‌سازی لغو شده است.';
$string['registration_err_suspended'] = 'فعال‌سازی معلق است.';
$string['registration_err_product_mismatch'] = 'عدم تطابق پیکربندی محصول.';
$string['registration_err_domain'] = 'دامنه این سایت برای فعال‌سازی مجاز نیست.';
$string['registration_err_activation_limit'] = 'سقف فعال‌سازی پلاگین پر شده است.';
$string['registration_err_misconfigured'] = 'درخواست فعال‌سازی نادرست پیکربندی شده است.';
$string['registration_err_bad_signature'] = 'امضای مجوز از MeetLet نامعتبر است.';
$string['registration_err_network'] = 'اتصال به سرور فعال‌سازی MeetLet برقرار نشد.';
$string['registration_err_unknown'] = 'خطای ناشناخته در فعال‌سازی رخ داد.';
$string['registration_crypto_error'] = 'خطای رمزنگاری فعال‌سازی.';
$string['registration_sodium_required'] = 'افزونه sodium در PHP برای فعال‌سازی پلاگین لازم است.';
$string['task_registration_heartbeat'] = 'بررسی روزانه فعال‌سازی پلاگین MeetLet';
$string['privacy:metadata:meetlet_marketplace_license'] = 'هویت فعال‌سازی اختیاری MeetLet که فقط پس از فعال‌سازی توسط مدیر ذخیره می‌شود.';
$string['privacy:metadata:meetlet_marketplace_license:installation_id'] = 'شناسه یکتای نصب تولیدشده توسط افزونه.';
$string['privacy:metadata:meetlet_marketplace_license:status'] = 'آخرین وضعیت فعال‌سازی شناخته‌شده.';
$string['privacy:metadata:meetlet_marketplace_license:last_validated'] = 'زمان آخرین اعتبارسنجی فعال‌سازی با MeetLet.';
$string['privacy:metadata:meetlet_registration'] = 'در صورت فعال‌سازی اختیاری توسط مدیر، متادیتای سایت به سرویس فعال‌سازی MeetLet برای اعلان به‌روزرسانی و آمار پشتیبانی ارسال می‌شود.';
$string['privacy:metadata:meetlet_registration:domain'] = 'دامنه عمومی سایت مودل.';
$string['privacy:metadata:meetlet_registration:installation_id'] = 'شناسه یکتای نصب.';
$string['privacy:metadata:meetlet_registration:company'] = 'نام سایت یا سازمان.';
$string['privacy:metadata:meetlet_registration:email'] = 'ایمیل مدیر یا پشتیبانی.';
$string['privacy:metadata:meetlet_registration:plugin'] = 'نام کامپوننت افزونه مودل.';
$string['privacy:metadata:meetlet_registration:plugin_release'] = 'نسخه انتشار افزونه.';
$string['privacy:metadata:meetlet_registration:platform'] = 'نام پلتفرم (moodle).';
$string['privacy:metadata:meetlet_registration:platform_version'] = 'نسخه انتشار مودل.';