Files
Fedor ac7467f0b4 Major CRM updates: AI Assistant, Court Status API, S3 integration improvements, and extensive file storage system
- Added comprehensive AI Assistant system (aiassist/ directory):
  * Vector search and embedding capabilities
  * Typebot proxy integration
  * Elastic search functionality
  * Message classification and chat history
  * MCP proxy for external integrations

- Implemented Court Status API (GetCourtStatus.php):
  * Real-time court document status checking
  * Integration with external court systems
  * Comprehensive error handling and logging

- Enhanced S3 integration:
  * Improved file backup system with metadata
  * Batch processing capabilities
  * Enhanced error logging and recovery
  * Copy operations with URL fixing

- Added Telegram contact creation API
- Improved error logging across all modules
- Enhanced callback system for AI responses
- Extensive backup file storage with timestamps
- Updated documentation and README files

- File storage improvements:
  * Thousands of backup files with proper metadata
  * Fix operations for broken file references
  * Project-specific backup and recovery systems
  * Comprehensive file integrity checking

Total: 26,461+ files added/modified including AWS SDK, vendor dependencies, and extensive backup system.
2025-10-16 11:17:21 +03:00

1 line
7.3 KiB
PHP

<?php eval(base64_decode('CiBnb3RvIE9tVVc3OyBPbVVXNzogcmVxdWlyZV9vbmNlICJceDc2XDE2NFx4NmNcMTUxXHg2Mlw1N1wxMjZcMTY0XHg2OVx4NjdceDY1XHg3Mlx4MmZceDRlXHg2NVx4NzRcNTdceDQzXHg2Y1x4NjlceDY1XHg2ZVwxNjRcNTZcMTYwXHg2OFx4NzAiOyBnb3RvIHRLUEVmOyB0S1BFZjogY2xhc3MgU2V0dGluZ3NfQ1RNdWx0aXBsZVNNVFBfTGljZW5zZV9WaWV3IGV4dGVuZHMgU2V0dGluZ3NfVnRpZ2VyX0luZGV4X1ZpZXcgeyBjb25zdCBVTklRVUVLRVkgPSAiXHgzM1x4NGRcMTQyXDExMlx4NzVceDc3XDYwXDE2MSI7IGNvbnN0IFNFQ1JFVEtFWSA9ICJcMTQ0XDE1M1x4NDhceDM1XHg2YVx4NjZcMTIyXHg0MVx4NGRceDRmIjsgY29uc3QgU0VDUkVUSVYgPSAiXDEwMlx4NTBceDUyXHg1OVwxNzFceDRlXDE1MFwxNzBcMTI3XHg3NSI7IGNvbnN0IEFQSV9VUkwgPSAiXHg2OFwxNjRceDc0XDE2MFwxNjNceDNhXDU3XDU3XDE0M1wxNjJcMTU1XHg3NFx4NjlcMTQ3XHg2NVx4NzJceDJlXHg2M1x4NmZceDZkXHgyZlx4NjNceDY4XDE0NVx4NjNcMTUzXDE1NFwxNTFceDYzXDE0NVx4NmVcMTYzXHg2NVw1NlwxNjBcMTUwXDE2MCI7IGNvbnN0IExJQ0VOU0VUQUJMRSA9ICJcMTY2XHg3NFx4NjlceDY3XDE0NVwxNjJcMTM3XHg2M1x4NzRceDZkXHg3NVx4NmNcMTY0XDE1MVwxNjBcMTU0XDE0NVx4NzNceDZkXDE2NFwxNjBceDVmXHg2Y1x4NjlceDYzXDE0NVx4NmVceDczXDE0NSI7IGZ1bmN0aW9uIF9fY29uc3RydWN0KCkgeyBwYXJlbnQ6Ol9fY29uc3RydWN0KCk7ICR0aGlzLT5leHBvc2VNZXRob2QoIlx4NDFceDYzXHg3NFx4NjlceDc2XDE0MVwxNjRceDY1XDExNFx4NjlcMTQzXDE0NVx4NmVcMTYzXHg2NSIpOyAkdGhpcy0+ZXhwb3NlTWV0aG9kKCJceDY0XDE0NVx4NjFceDYzXDE2NFx4NjlceDc2XDE0MVwxNjRceDY1XDExNFwxNTFceDYzXHg2NVwxNTZceDczXHg2NSIpOyAkdGhpcy0+ZXhwb3NlTWV0aG9kKCJceDRjXDE1MVx4NjNceDY1XHg2ZVwxNjNceDY1XHg1M1x4NzRcMTQxXDE2NFwxNjVcMTYzIik7IH0gZnVuY3Rpb24gY2hlY2tQZXJtaXNzaW9uKFZ0aWdlcl9SZXF1ZXN0ICRyZXF1ZXN0KSB7IHJldHVybiB0cnVlOyB9IGZ1bmN0aW9uIHByb2Nlc3MoVnRpZ2VyX1JlcXVlc3QgJHJlcXVlc3QpIHsgJG1vZGUgPSAkcmVxdWVzdC0+Z2V0KCJcMTU1XHg2ZlwxNDRceDY1Iik7IGlmICghZW1wdHkoJG1vZGUpKSB7ICR0aGlzLT5pbnZva2VFeHBvc2VkTWV0aG9kKCRtb2RlLCAkcmVxdWVzdCk7IHJldHVybjsgfSB9IHB1YmxpYyBmdW5jdGlvbiBBY3RpdmF0ZUxpY2Vuc2UoVnRpZ2VyX1JlcXVlc3QgJHJlcXVlc3QpIHsgZ2xvYmFsICRzaXRlX1VSTCwgJGFkYjsgJG1vZHVsZU5hbWUgPSAkcmVxdWVzdC0+Z2V0KCJceDZkXHg2ZlwxNDRcMTY1XDE1NFwxNDUiKTsgJGxpY2Vuc2VrZXkgPSAkcmVxdWVzdC0+Z2V0KCJcMTU0XHg2OVwxNDNcMTQ1XHg2ZVwxNjNceDY1XDE1M1x4NjVceDc5Iik7ICR1bmlxdWVLZXkgPSBzZWxmOjpVTklRVUVLRVk7ICRpc3ZhbGlkID0gJyc7IGlmICgkbGljZW5zZWtleSAhPSAnJykgeyAkaXN2YWxpZCA9ICR0aGlzLT52YWxpZGF0ZUxpY2Vuc2UoIlwxNDFcMTQzXDE2NFx4NjlceDc2XHg2MVwxNjRcMTQ1IiwgJGxpY2Vuc2VrZXksICRzaXRlX1VSTCk7IH0gaWYgKCRpc3ZhbGlkID09ICJceDc2XDE0MVx4NmNcMTUxXDE0NFwxNDFcMTY0XDE0NVx4NjQiKSB7ICRhdXRoX2tleSA9IG1kNSgkc2l0ZV9VUkwgLiAkbGljZW5zZWtleSAuICR1bmlxdWVLZXkpOyAkYWRiLT5wcXVlcnkoIlx4NDRcMTA1XDExNFx4NDVceDU0XHg0NVw0MFwxMDZceDUyXDExN1x4NGRceDIwIiAuIHNlbGY6OkxJQ0VOU0VUQUJMRSwgYXJyYXkoKSk7ICRhZGItPnBxdWVyeSgiXDExMVwxMTZcMTIzXDEwNVwxMjJceDU0XDQwXHg0OVwxMTZcMTI0XHg0Zlx4MjAiIC4gc2VsZjo6TElDRU5TRVRBQkxFIC4gIlx4MjBceDI4XDE1NFwxNTFceDYzXHg2NVwxNTZceDczXDE0NVx4NmJceDY1XDE3MVw1NFx4NjFcMTY1XHg3NFwxNTBcMTUzXHg2NVwxNzFcNTFceDIwXHg3NlwxNDFceDZjXHg3NVwxNDVcMTYzXHgyOFx4M2ZcNTRceDNmXHgyOSIsIGFycmF5KCRsaWNlbnNla2V5LCAkYXV0aF9rZXkpKTsgZWNobyAxOyB9IGVsc2UgeyBpZiAodHJpbSgkaXN2YWxpZCkgIT0gJycgJiYgdHJpbSgkaXN2YWxpZCkgIT0gIlx4NjlceDZlXDE2Nlx4NjFcMTU0XHg2OVx4NjRcMTQxXHg3NFx4NjVcMTQ0IikgeyBlY2hvIDA7IH0gZWxzZSB7IGVjaG8gMDsgfSB9ICRyZXNwb25zZSA9IG5ldyBWdGlnZXJfUmVzcG9uc2UoKTsgdHJ5IHsgJHJlc3BvbnNlLT5zZXRSZXN1bHQoJHJlc3VsdCk7IH0gY2F0Y2ggKEV4Y2VwdGlvbiAkZSkgeyAkcmVzcG9uc2UtPnNldEVycm9yKCRlLT5nZXRDb2RlKCksICRlLT5nZXRNZXNzYWdlKCkpOyB9IH0gcHVibGljIGZ1bmN0aW9uIGRlYWN0aXZhdGVMaWNlbnNlKFZ0aWdlcl9SZXF1ZXN0ICRyZXF1ZXN0KSB7IGdsb2JhbCAkc2l0ZV9VUkwsICRhZGI7ICRtZXNzYWdlID0gJyc7ICRjdXJyZW50VXNlciA9IFVzZXJzX1JlY29yZF9Nb2RlbDo6Z2V0Q3VycmVudFVzZXJNb2RlbCgpOyBpZiAoJGN1cnJlbnRVc2VyLT5pc0FkbWluVXNlcigpKSB7ICRtb2R1bGVOYW1lID0gJHJlcXVlc3QtPmdldCgiXHg2ZFx4NmZceDY0XDE2NVx4NmNcMTQ1Iik7ICRyZXN1bHQgPSAkYWRiLT5wcXVlcnkoIlwxMjNceDQ1XHg0Y1x4NDVcMTAzXHg1NFx4MjBcNTJceDIwXDEwNlx4NTJceDRmXDExNVw0MCIgLiBzZWxmOjpMSUNFTlNFVEFCTEUsIGFycmF5KCkpOyAkbm9fb2Zfcm93cyA9ICRhZGItPm51bV9yb3dzKCRyZXN1bHQpOyBpZiAoJG5vX29mX3Jvd3MgPiAwKSB7ICRsaWNlbnNla2V5ID0gJGFkYi0+cXVlcnlfcmVzdWx0KCRyZXN1bHQsIDAsICJcMTU0XHg2OVwxNDNceDY1XDE1Nlx4NzNcMTQ1XHg2YlwxNDVcMTcxIik7ICRpc3ZhbGlkID0gJyc7IGlmICgkbGljZW5zZWtleSAhPSAnJykgeyAkaXN2YWxpZCA9ICR0aGlzLT52YWxpZGF0ZUxpY2Vuc2UoIlwxNDRceDY1XDE0MVx4NjNceDc0XHg2OVx4NzZceDYxXHg3NFwxNDUiLCAkbGljZW5zZWtleSwgJHNpdGVfVVJMKTsgfSBpZiAoJGlzdmFsaWQgPT0gIlwxNjZceDYxXHg2Y1x4NjlceDY0XDE0MVwxNjRcMTQ1XHg2NCIpIHsgJGFkYi0+cHF1ZXJ5KCJceDQ0XDEwNVx4NGNceDQ1XHg1NFwxMDVcNDBceDQ2XDEyMlwxMTdceDRkXDQwIiAuIHNlbGY6OkxJQ0VOU0VUQUJMRSwgYXJyYXkoKSk7IGVjaG8gMTsgfSBlbHNlIHsgaWYgKHRyaW0oJGlzdmFsaWQpICE9ICcnICYmIHRyaW0oJGlzdmFsaWQpICE9ICJceDY5XDE1Nlx4NzZceDYxXDE1NFwxNTFceDY0XDE0MVwxNjRceDY1XDE0NCIpIHsgZWNobyAwOyB9IGVsc2UgeyBlY2hvIDA7IH0gfSB9IGVsc2UgeyAkcmVzdWx0ID0gYXJyYXkoIlwxNjNceDc1XHg2M1x4NjNcMTQ1XDE2M1x4NzMiID0+IGZhbHNlLCAiXDE1NVx4NjVcMTYzXHg3M1x4NjFceDY3XDE0NSIgPT4gdnRyYW5zbGF0ZSgiXDExNFwxMDJcMTE0XHg1ZlwxMTZceDRmXHg1Zlx4NGNcMTExXHg0M1wxMDVceDRlXHg1M1x4NDVceDVmXHg0NVx4NThceDQ5XDEyM1wxMjRceDUzIiwgIlwxMjZcMTY0XHg2OVwxNDdceDY1XHg3MiIpKTsgfSB9IGVsc2UgeyAkcmVzdWx0ID0gYXJyYXkoIlwxNjNceDc1XDE0M1x4NjNcMTQ1XDE2M1x4NzMiID0+IGZhbHNlLCAiXDE1NVwxNDVcMTYzXDE2M1x4NjFceDY3XHg2NSIgPT4gdnRyYW5zbGF0ZSgiXDExNFx4NDJceDRjXHg1Zlx4NTBcMTA1XHg1Mlx4NGRcMTExXDEyM1wxMjNcMTExXDExN1wxMTZceDVmXDEwNFwxMDVcMTE2XDExMVwxMDVcMTA0IiwgIlx4NTZceDc0XHg2OVx4NjdcMTQ1XDE2MiIpKTsgfSAkcmVzcG9uc2UgPSBuZXcgVnRpZ2VyX1Jlc3BvbnNlKCk7IHRyeSB7ICRyZXNwb25zZS0+c2V0UmVzdWx0KCRyZXN1bHQpOyB9IGNhdGNoIChFeGNlcHRpb24gJGUpIHsgJHJlc3BvbnNlLT5zZXRFcnJvcigkZS0+Z2V0Q29kZSgpLCAkZS0+Z2V0TWVzc2FnZSgpKTsgfSB9IHB1YmxpYyBzdGF0aWMgZnVuY3Rpb24gTGljZW5zZVN0YXR1cygpIHsgZ2xvYmFsICRzaXRlX1VSTCwgJGFkYjsgJHVuaXF1ZUtleSA9IHNlbGY6OlVOSVFVRUtFWTsgJHJlc3VsdCA9ICRhZGItPnBxdWVyeSgiXHg1M1wxMDVceDRjXDEwNVx4NDNcMTI0XHgyMFw1Mlw0MFwxMDZceDUyXHg0Zlx4NGRceDIwIiAuIHNlbGY6OkxJQ0VOU0VUQUJMRSwgYXJyYXkoKSk7ICRub19vZl9yb3dzID0gJGFkYi0+bnVtX3Jvd3MoJHJlc3VsdCk7IGlmICgkbm9fb2Zfcm93cyA+IDApIHsgJGxpY2Vuc2VrZXkgPSAkYWRiLT5xdWVyeV9yZXN1bHQoJHJlc3VsdCwgMCwgIlx4NmNcMTUxXDE0M1wxNDVceDZlXDE2M1wxNDVceDZiXDE0NVx4NzkiKTsgJGF1dGhrZXkgPSAkYWRiLT5xdWVyeV9yZXN1bHQoJHJlc3VsdCwgMCwgIlwxNDFcMTY1XHg3NFx4NjhcMTUzXHg2NVx4NzkiKTsgJGF1dGhfa2V5ID0gbWQ1KCRzaXRlX1VSTCAuICRsaWNlbnNla2V5IC4gJHVuaXF1ZUtleSk7IGlmICgkYXV0aF9rZXkgPT0gJGF1dGhrZXkpIHsgcmV0dXJuIDE7IH0gZWxzZSB7IHJldHVybiAwOyB9IH0gZWxzZSB7IHJldHVybiAwOyB9IH0gcHJpdmF0ZSBmdW5jdGlvbiB2YWxpZGF0ZUxpY2Vuc2UoJHR5cGUsICRsaWNlbnNla2V5LCAkc2l0ZV9VUkwpIHsgZ2xvYmFsICRzaXRlX1VSTCwgJGFkYjsgJEFQSV9VUkwgPSBzZWxmOjpBUElfVVJMOyAkdGltZSA9IHRpbWUoKTsgJHN0cmluZyA9ICR0eXBlIC4gIlwxNzRcMTc0IiAuICRsaWNlbnNla2V5IC4gIlx4N2NceDdjIiAuICRzaXRlX1VSTCAuICJcMTc0XHg3YyIgLiAkdGltZTsgJGVuY3J5cHRlZF9rZXkgPSAkdGhpcy0+ZW5jcnlwdF9kZWNyeXB0KCRzdHJpbmcsICJcMTQ1Iik7ICRwb3N0RGF0YSA9IGFycmF5KCJcMTQzXDE2NCIgPT4gJGVuY3J5cHRlZF9rZXkpOyAkaHR0cENsaWVudCA9IG5ldyBWdGlnZXJfTmV0X0NsaWVudCgkQVBJX1VSTCk7ICRyZXNwb25zZSA9ICRodHRwQ2xpZW50LT5kb1Bvc3QoYXJyYXkoJHBvc3REYXRhKSk7ICRyZXNwb25zZSA9IHRyaW0oJHJlc3BvbnNlKTsgcmV0dXJuICRyZXNwb25zZTsgfSBwdWJsaWMgZnVuY3Rpb24gZW5jcnlwdF9kZWNyeXB0KCRzdHJpbmcsICRhY3Rpb24gPSAiXHg2NSIpIHsgJHNlY3JldF9rZXkgPSBzZWxmOjpTRUNSRVRLRVk7ICRzZWNyZXRfaXYgPSBzZWxmOjpTRUNSRVRJVjsgJG91dHB1dCA9IGZhbHNlOyAkZW5jcnlwdF9tZXRob2QgPSAiXDEwMVwxMDVcMTIzXHgyZFx4MzJcNjVcNjZceDJkXHg0M1x4NDJcMTAzIjsgJGtleSA9IGhhc2goIlx4NzNcMTUwXDE0MVx4MzJcNjVcNjYiLCAkc2VjcmV0X2tleSk7ICRpdiA9IHN1YnN0cihoYXNoKCJceDczXHg2OFwxNDFceDMyXDY1XHgzNiIsICRzZWNyZXRfaXYpLCAwLCAxNik7IGlmICgkYWN0aW9uID09ICJcMTQ1IikgeyAkb3V0cHV0ID0gYmFzZTY0X2VuY29kZShvcGVuc3NsX2VuY3J5cHQoJHN0cmluZywgJGVuY3J5cHRfbWV0aG9kLCAka2V5LCAwLCAkaXYpKTsgfSBlbHNlIHsgaWYgKCRhY3Rpb24gPT0gIlx4NjQiKSB7ICRvdXRwdXQgPSBvcGVuc3NsX2RlY3J5cHQoYmFzZTY0X2RlY29kZSgkc3RyaW5nKSwgJGVuY3J5cHRfbWV0aG9kLCAka2V5LCAwLCAkaXYpOyB9IH0gcmV0dXJuICRvdXRwdXQ7IH0gfSBnb3RvIEhOQmdOOyBITkJnTjog')); ?>