Задать вопрос
  • Обновление пользовательских полей?

    sslion
    @sslion Автор вопроса
    Подведу итог:
    значение множественного поля устанавливает через массив: 'UF_CRM_1761220670619' => [3905]
    причем, если значение нужно ДОПИСАТЬ в массив, то соответственно нужно также передавать уже существующие значения.

    у лидов "потерянные" действительно JUNK: STATUS_ID=JUNK (хотя в канбан заголовок этого статуса отображается как LOST)
    Написано
  • Множественное подключние к СМС одного телефона?

    sslion
    @sslion
    Mors Clamor, Есть отличные интеграции для Битрикс24, телефония, СМС, запись звонков, транскрибация звонков.
    А с одним физическим телефоном ты не сможешь определить какому оператору ответил пользователь, если тема СМС изменилась (сами сообщения все равно придется хранить на сервере).
    Лучше использовать отдельный сервис sms.ru - цены божеские, можно использовать несколько телефонов, но вроде нужен договор с юр.лицом.
  • Множественное подключние к СМС одного телефона?

    sslion
    @sslion
    Александр, бэк можно на Nest.js для поддержания постоянного вебсокет соединения (на сервере в базе можно хранить историю сообщений), UI на флаттер (даже можно телеграм-бота использовать для отправки сообщений на сервер) главное чтобы на основном телефоне "смс-отправлялка" имела постоянное соединение с сервером (похрен, можно даже и Firebase прикрутить, но не фак что из-за санкций в будущем будет работать).
    В целом самое сложное - это "нативная" отправка смс на основном телефоне.
  • Множественное подключние к СМС одного телефона?

    sslion
    @sslion
    Александр, ну так напиши простое веб-приложение, через которое операторы будут присылать сообщение на основной телефон для отправки СМС
  • Как убрать ошибку php которая возникла при обновлении копии битрикса?

    sslion
    @sslion
    Вы обновили битрикс, но скорей всего не обновили решения (особенно те, которые из моркетплейса)
    В админке битрикса проверьте доступны ли какие-то обновления.
    Написано
  • GO fyne serve выдает ошибку?

    sslion
    @sslion Автор вопроса
    Все оказалось проще. Как для fyne serve нужно указывать CGO_ENABLED=0, т.к. в webassembly пользователей нет, соответственно сборщик и ругается..
    Написано
  • Размер шрифта комментариев в шторме 2024.3.5?

    sslion
    @sslion Автор вопроса
    Алексей Уколов, да, я тоже глянул настройки, но не нашел отдельно
    Написано
  • Размер шрифта комментариев в шторме 2024.3.5?

    sslion
    @sslion Автор вопроса
    Алексей Уколов, да, оказалось все так просто... спасибо!
    а цвет шрифта такого блока не настраивается отдельно от цвета комментов?
    Написано
  • Trace/breakpoint trap (core dumped)?

    sslion
    @sslion Автор вопроса
    Кот Абсолютный, Конкретизировать можно, а не сыпать абстракциями?
    Написано
  • Trace/breakpoint trap (core dumped)?

    sslion
    @sslion Автор вопроса
    imasdf, на сервере не установлен го, да и таскать проект с локалки на сервеа для сборки та еще затея...
    Написано
  • Trace/breakpoint trap (core dumped)?

    sslion
    @sslion Автор вопроса
    Дмитрий, Крайне полезный ответ!
    Написано
  • Trace/breakpoint trap (core dumped)?

    sslion
    @sslion Автор вопроса
    imasdf, Сборку делаю на винде, вот PowerShell скрипт
    param(
        [string]$Platform = "linux",   # linux, windows, darwin (macOS)
        [string]$Arch = "amd64",       # amd64, arm64, 386
        [string]$OutputName = "myapp",
        [string]$GoFile = "main.go"
    )
    
    Write-Host "Компиляция для $Platform/$Arch..."
    $env:GOOS = $Platform
    $env:GOARCH = $Arch
    $env:CGO_ENABLED = 0
    go build -o "$OutputName-$Platform-$Arch" $GoFile
    
    if ($LASTEXITCODE -eq 0) {
        Write-Host "Успешно: $OutputName-$Platform-$Arch" -ForegroundColor Green
    } else {
        Write-Host "Ошибка компиляции!" -ForegroundColor Red
        exit 1
    }


    Вот сама программулина, сделана полностью усилиями Deepseek
    package main
    
    import (
    	"database/sql"
    	"encoding/json"
    	"fmt"
    	"log"
    	"net"
    	"net/http"
    	"strings"
    )
    import _ "github.com/go-sql-driver/mysql"
    
    func handler(c net.Conn) {
    	addr := c.RemoteAddr().String()
    	fmt.Println("new connection")
    	fmt.Println(addr)
    	c.Write([]byte("ok"))
    	c.Close()
    }
    
    func main() {
    	log.Println("Программа запущена")
    
    	http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) {
    		fmt.Fprintf(w, "Hello World!")
    	})
    	http.HandleFunc("/lists", func(w http.ResponseWriter, r *http.Request) {
    		fmt.Println("/lists входящий запрос")
    
    		db, err := sql.Open("**************************")
    		if err != nil {
    			fmt.Fprintf(w, "Ошибка подключения к базе")
    			fmt.Println("Ошибка подключения к базе")
    			panic(err)
    			return
    		}
    		defer db.Close()
    
    		rows, err := db.Query("SELECT lists.id, lists.title, lists.code, lists.type FROM lists LEFT JOIN list_items ON lists.id = list_items.list_id")
    		if err != nil {
    			panic(err)
    		}
    		defer rows.Close()
    
    		// JSON
    		if err := printJSONResults(w, rows); err != nil {
    			http.Error(w, err.Error(), http.StatusInternalServerError)
    		}
    
    		// TEXT
    		//w.Header().Set("Content-Type", "text/plain")
    		//if err := printPlainTextResults(w, rows); err != nil {
    		//	http.Error(w, err.Error(), http.StatusInternalServerError)
    		//}
    
    	})
    	log.Println("Установлены хэндлеры")
    
    	http.ListenAndServe(":5000", nil)
    	log.Println("Приложение запущено на 5000 порту")
    }
    
    func printJSONResults(w http.ResponseWriter, rows *sql.Rows) error {
    	cols, err := rows.Columns()
    	if err != nil {
    		return err
    	}
    
    	var results []map[string]interface{}
    	values := make([]interface{}, len(cols))
    	pointers := make([]interface{}, len(cols))
    	for i := range values {
    		pointers[i] = &values[i]
    	}
    
    	for rows.Next() {
    		err := rows.Scan(pointers...)
    		if err != nil {
    			return err
    		}
    
    		row := make(map[string]interface{})
    		for i, col := range cols {
    			val := values[i]
    			if b, ok := val.([]byte); ok {
    				row[col] = string(b) // Преобразование []byte в string
    			} else {
    				row[col] = val
    			}
    		}
    		results = append(results, row)
    	}
    
    	w.Header().Set("Content-Type", "application/json")
    	return json.NewEncoder(w).Encode(results)
    }
    
    func printPlainTextResults(w http.ResponseWriter, rows *sql.Rows) error {
    	cols, err := rows.Columns()
    	if err != nil {
    		return err
    	}
    
    	// Заголовки столбцов
    	var header string
    	for _, col := range cols {
    		header += fmt.Sprintf("%-15s", col) // Форматирование с фиксированной шириной
    	}
    	fmt.Fprintln(w, header)
    	fmt.Fprintln(w, strings.Repeat("-", len(cols)*15))
    
    	// Данные
    	values := make([]interface{}, len(cols))
    	pointers := make([]interface{}, len(cols))
    	for i := range values {
    		pointers[i] = &values[i]
    	}
    
    	for rows.Next() {
    		err := rows.Scan(pointers...)
    		if err != nil {
    			return err
    		}
    
    		var row string
    		for _, val := range values {
    			row += fmt.Sprintf("%-15v", val)
    		}
    		fmt.Fprintln(w, row)
    	}
    	return nil
    }
    
    type List struct {
    	ID    int    `json:"id" db:"id"`
    	Title string `json:"title" db:"title"`
    	Code  string `json:"code" db:"code"`
    	Type  string `json:"type" db:"type"` // В коде - `Type`, но в БД/JSON - `type`
    }


    На VDS Ububntu 22
    Написано
  • Некорректно работает пагинация?

    sslion
    @sslion Автор вопроса
    Дмитрий, Просто так устроен вывод списка товаров, на кой там нужны коменты я хз, но заказчику виднее.... Видимо хотят сэкономить на запросах к API
    Написано
  • Действительно ли скрипт на этом сайте не работает?

    sslion
    @sslion
    Ну вообще-то по ссылке (на картинке) грузится иконка favicon.ico, а не скрипт
    Ошибка в предыдущем сообщении, ее и нужно смотреть.
    Написано
  • Codeigniter permission denied?

    sslion
    @sslion Автор вопроса
    Дмитрий, лог сервера я в вопросе показал
    Написано
  • Codeigniter permission denied?

    sslion
    @sslion Автор вопроса
    Дмитрий, Такого в принципе не может быть, потому что все остальное работает, админка, кабинет юзера, да просто раздел новостей. Ведь приложение работает через одну точку входа...
    Все падает на этапе загрузки конфигов, хотя они одни на все приложение
    Написано
  • Opengl server rendering c#?

    sslion
    @sslion Автор вопроса
    Такой вариант не подходит т.к. используется GPU, а у меня VDS.
    Должно получиться ASP.NET WebAPP, которое рендерит сцену, результат пишет в файл картинки, и выдает урл картинки для использования в <IMG SRC="src/url">
    Рендеринг должен проходить БЕЗ использования видеокарты.
  • Как добавить в форму новую строку?

    sslion
    @sslion
    А приведенный код точно рабочий? Не вижу у инпутов нэймы... Как данные из этих инпутов попадают в $_POST?

    А так ничего сложного. В html добавить еще один div с инпутом для модели, в обработчике отправки формы добавить обработку нового инпута. в php добавить что- типа
    if (isset($_POST['model'])) {$model = $_POST['model'];}
    и $e->body.="Модель: <b>$model</b> <br/>";